PDA

Просмотр полной версии : [Помогите!] RegEXpr


АнтиАмерика
11.09.2011, 17:52
как парсить две строки?
ОДНОЙ строчкой!
з.ы. зачем мне это надо, не спрашивайте.

*xalyava*
11.09.2011, 18:10
RegExp.Expression:= ' <td colspan="3" align="right">(.*?)<strong>(.*?)</strong>';
if RegExp.Exec(переменная)then
label2.caption:=(RegExp.Match[1]);
label2.caption:=(RegExp.Match[2]);

//(.*?) то что парсим

// (RegExp.Match[2]) - цифра 2 обозначает 2-ую по счету (.*?), цифра 1 соответственно 1-ую (.*?)


вот пример:

procedure TForm1.Button1Click(Sender: TObject);
var
k:TStrings;
s:string;
regexp:tregexpr;
begin
regexp:= tregexpr.Create;
k:=Tstringlist.Create;
try
s:=id[Ссылки могут видеть только зарегистрированные и активированные пользователи]('[Ссылки могут видеть только зарегистрированные и активированные пользователи]');

RegExp.Expression:= '<div id="post_message_1759998">(.*?)<br />(.*?)<br />';
if RegExp.Exec(s)then
memo1.lines.Add(RegExp.Match[1]);
memo1.lines.Add(RegExp.Match[2]);

finally

k.Free;
regexp.Free;
end;
end;