想从网页里整理资料。有什么好办法(100分)

  • 主题发起人 主题发起人 sward
  • 开始时间 开始时间
S

sward

Unregistered / Unconfirmed
GUEST, unregistred user!
从一个论坛的网页里,(其实是一个列表, 有个表头,然后N个跟贴)
我将这个网页读成一个文本文件保存下来, 现在想把其中发贴人,发贴时间,发贴内容等送到一个数据库中。
有没有现在的什么控件或分割函数, 直接将每一有关部分送到数组里去?
比如 模式如下
姓名: XX1 性别 YY1 说的ZZ1
姓名: XX2 性别 YY2 说的ZZ2
姓名: XX3 性别 YY3 说的ZZ3
姓名: XX4 性别 YY4 说的ZZ4
姓名: XX5 性别 YY5 说的ZZ5
将其中的XX,YY,zz送到一个数组里去

 
放到EXCLE中表格化后再处理吧。
 
有没有类似于 AWK或 SED ,或正则表达式的控件?

 
用什么控件?直接读文本呗,读一行把里面有用的东西输入数据库,如此循环不就行了
 
先读出每一行的数据,
分割字符串:
function SplitString(const source,ch:string):tstringlist;
var
temp:string;
i:integer;
begin
result:=tstringlist.Create;
temp:=source;
i:=pos(ch,source);
while i<>0 do
begin
result.Add(copy(temp,0,i-1));
delete(temp,1,i);
i:=pos(ch,temp);
end;
result.Add(temp);
end;
调用:
s:=splitstring('姓名: XX1 性别 YY1 说的ZZ1',' ');
for i:=0 to s.Count-1 do
b:=b+s.Strings+#13;
showmessage(b);
s.free;
 
读HTML源代码,然后处理字符串,保存有用的东西。
 
我当然知道分析字符串可能达到目地, 但这个需求(正则表达式分析)对于一个字符处理来讲应是比较常用的,控件或例程库应该已经有了,也许到国外的网站可以找到吧。
换句话来讲,我想用个模板级别的分解分析,这对于从网页收集资料应比较用有
 
后退
顶部