以下代码在D7下测试通过:procedure TForm1.Button1Click(Sender: TObject); const PreChar='<user>'; FixChar='</user>'; var posA:integer; tmpS:String; begin tmpS:=memo1.Text; posA:=pos(PreChar,LowerCase(tmpS)); delete(tmpS,1,posA+length(preChar)); posA:=pos(FixChar,LowerCase(tmpS)); if posA>0 then memo2.Text:=copy(tmpS,0,posA-1); end; ----------------------- http://www.kmok.cn/ -----------------------
//以下代码在D7下测试通过:procedure TForm1.Button1Click(Sender: TObject); const PreChar='<user>'; FixChar='</user>'; var posA:integer; tmpS:String; begin tmpS:=memo1.Text; posA:=pos(PreChar,LowerCase(tmpS)); delete(tmpS,1,posA+length(preChar)); posA:=pos(FixChar,LowerCase(tmpS)); if posA>0 then memo2.Text:=copy(tmpS,0,posA-1); end;
const
PreChar='<user>';
FixChar='</user>';
var
posA:integer;
tmpS:String;
begin
tmpS:=memo1.Text;
posA:=pos(PreChar,LowerCase(tmpS));
delete(tmpS,1,posA+length(preChar));
posA:=pos(FixChar,LowerCase(tmpS));
if posA>0 then
memo2.Text:=copy(tmpS,0,posA-1);
end;
-----------------------
http://www.kmok.cn/
-----------------------
const
PreChar='<user>';
FixChar='</user>';
var
posA:integer;
tmpS:String;
begin
tmpS:=memo1.Text;
posA:=pos(PreChar,LowerCase(tmpS));
delete(tmpS,1,posA+length(preChar));
posA:=pos(FixChar,LowerCase(tmpS));
if posA>0 then
memo2.Text:=copy(tmpS,0,posA-1);
end;
我的目的是将Memo1中所有的<user>和 </user>间字符串放入到Memo2里.
你的代码,我测试后,只能读取第一个<user>和 </user>间的字符串并放入Memo2中
后边的..就没有效果了.
比如是
<HTML><HEAD><TITLE>Query the APNIC Whois Database</TITLE><link rel="Shortcut Icon" href="/favicon.ico">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<meta name="Format" content="Html">
<meta name="Type" content="Form">
<meta name="Function" content="Form">
<meta name="Availability" content="Public - Members">
<user>lovemit</user>
<a href="http://bluecross.163.com/"><span class="cBlue">行动</span></a><br />
<a href="http://bluecross.163.com/08/1002/10/4N89H26V00012NUO.html">忽悠!</a><br />
<user>baidu</user>
<a href="http://bluecross.163.com/"><span class="cBlue">行动</span></a><br />
<a href="http://bluecross.163.com/08/1002/10/4N89H26V00012NUO.html">忽悠!</a><br />
<user>csdn.com</user>
上边只是一个例子,随便复制的一些源码..目的是想取得红色<user>这里是我想取的</user>中间部分,将红色的部分写入到Memo2中!
http://wq.apnic.net/apnic-bin/whois.pl?searchtext=CHINANET-GD&whois=Goprocedure TForm1.Button1Click(Sender: TObject);
const
PreChar='<b><u>inetnum</u></b>:';
FixChar='netname:';
var
posA,posB:integer;
tmpS:String;
begin//昨天那个帖的分数都给我了吧 嘿嘿 偶脸皮有点厚了
tmpS:=memo1.Text;
memo2.Lines.Clear;
repeat
posA:=pos(PreChar,tmpS);
if posA=0 then break;
posB:=pos(FixChar,tmpS);
memo2.Text :=memo2.Text+trim(copy(tmpS,posA+23,posB-posA-23))+#13;
delete(tmpS,1,posB+10);
until 1=2;
end;end.共提取出23个,我从网页上数了数,一个也不少202.96.128.0 - 202.96.191.255
202.103.128.0 - 202.103.191.255
202.104.0.0 - 202.104.255.255
202.105.0.0 - 202.105.255.255
218.13.0.0 - 218.18.255.255
218.19.0.0 - 218.20.255.255
219.128.0.0 - 219.137.255.255
59.32.0.0 - 59.42.255.255
61.140.0.0 - 61.146.255.255
218.13.0.0 - 218.20.255.255
58.60.0.0 - 58.63.255.255
125.88.0.0 - 125.95.255.255
121.8.0.0 - 121.15.255.255
121.32.0.0 - 121.35.255.255
116.16.0.0 - 116.31.255.255
116.4.0.0 - 116.7.255.255
61.144.0.0 - 61.144.255.255
61.144.255.248 - 61.144.255.255
61.145.0.0 - 61.145.255.255
61.146.0.0 - 61.146.255.255
119.128.0.0 - 119.143.255.255
119.120.0.0 - 119.127.255.255
119.144.0.0 - 119.147.255.255
中的两个23换成6,它是<user>的长度
谢谢了.
我自己研究出来了...本想过来关掉这个问题的
谁知道...jmxb123 这位朋友竟然说出了一个方法.
分就给你吧...
希望能交个朋友.