Текущий архив: 2005.09.25;
Скачать: CL | DM;
Вниз
РЕГУЛЯРНЫЕ ВЫРАЖЕНИЯ Найти похожие ветки
← →
Anat (2005-08-30 17:47) [0]Импортировал MS VBScript RegExp 5.5 и получил
VBScript_RegExp_55_tlb.pas
В соде имею
with TRegExp.Create(Self) do
try
Pattern := "<(.*?)>";
IgnoreCase := True;
Global := TRUE;
Multiline := TRUE;
mc := Execute("<p> <o>") as MatchCollection;
for i:=0 to mc.Count-1 do
что-то хочу сделать
finally
mc := nil;
Free;
end;
У меня mc.Count = 1 ( должно быть 2)
? почему
← →
Digitman © (2005-08-30 17:58) [1]возьми TRegExpr из
http://www.delphipages.com/edit/count.cfm?ID=1216&E=552
и не мучайся - для приведенного тобой случая он выдает ровно 2 совпадения
← →
panov © (2005-08-30 18:08) [2]В теме CAPS LOCK залипла?
← →
palva © (2005-08-30 20:45) [3]Не используйте with. Видимо, имеются переменные с тем же именем. Следующий код работает, как надо.
{$APPTYPE CONSOLE}
uses
Variants, ActiveX, ComObj;
var
re, mc: OleVariant;
begin
CoInitialize(Nil);
re := CreateOleObject("VBScript.RegExp");
re.Pattern := "<(.*?)>";
re.IgnoreCase := True;
re.Global := True;
re.Multiline := True;
mc := re.Execute("<p> <o>");
WriteLn(mc.Count); // 2
re := Unassigned;
end.
Страницы: 1 вся ветка
Текущий архив: 2005.09.25;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.037 c