困惑我一个月的问题 呵呵夸张了点(50)

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

sury9

Unregistered / Unconfirmed
GUEST, unregistred user!
我已经能获取到这个网页的htlm码,现在想提取出“重庆2区”这样的字符,我用pos取了半天也没办法,麻烦大侠指点下,送上积分。谢谢<tr align="center" bgcolor="#F0EFEE"> <td>7190</td> <td>重庆2区</td> <td>709659993</td><td>#WOAINI852</td> <td><font color=red></font></td> <td>鸡公我儿</td> <td>50</td> <td></td>
 
楼主注册3年了,这个不难啊。
 
教你一个简单的方法 用这个函数 StringReplace +一个自定义函数 SplitStringprocedure SplitString(var SL: TStringList; Source, Deli: string);var EndOfCurrentString: byte;begin Sl.Clear; while Pos(Deli, Source) > 0 do begin EndOfCurrentString := Pos(Deli, Source); Sl.add(Trim(Copy(Source, 1, EndOfCurrentString - 1))); Source := Copy(Source, EndOfCurrentString + length(Deli), length(Source) - EndOfCurrentString); end; Sl.Add(Trim(source));end;procedure TForm1.btn_FJClick(Sender: TObject);var SLF: TStringList; SLL: TStringList; FGF: string; i: Integer;begin mmo_2.Clear; FGF := '~~'; SLF := TStringList.Create; try SLL := TStringList.Create; try SLF.Text := Self.mmo_1.Text; SLF.Text := StringReplace(SLF.Text, #13#10, '', [rfReplaceAll, rfIgnoreCase]); SLF.Text := StringReplace(SLF.Text, '<font color=red>', '', [rfReplaceAll, rfIgnoreCase]); SLF.Text := StringReplace(SLF.Text, '</font>', '', [rfReplaceAll, rfIgnoreCase]); SLF.Text := StringReplace(SLF.Text, '<td>', '', [rfReplaceAll, rfIgnoreCase]); SLF.Text := StringReplace(SLF.Text, '</td>', '~~', [rfReplaceAll, rfIgnoreCase]); SLF.Text := StringReplace(SLF.Text, '<tr align="center" bgcolor="#F0EFEE">', '', [rfReplaceAll, rfIgnoreCase]); SLF.Text := StringReplace(SLF.Text, '</TR>', #13#10, [rfReplaceAll, rfIgnoreCase]); for i := 0 to SLF.Count - 1 do begin SLL.Clear; SplitString(SLL, SLF.Strings, FGF); if SLL.Count >= 9 then begin mmo_2.Lines.Add(Trim(SLL.Strings[1])); end; end; finally SLL.Free; end; finally SLF.Free; end;end;
 
多人接受答案了。
 
呵呵 自己解决了 注册三年怎么了?学习到现在也就5年了 又不经常用这个
 
后退
顶部