delphi 正则表达式 提取网页中数据

2025-02-24 17:24:21
推荐回答(1个)
回答1:

你换这下面的代码试试:

var
  reg:TPerlRegEx;
begin
  reg:=TPerlRegEx.Create();
  reg.Subject:='11223344';
  reg.regex:='\d\d';
  while reg.MatchAgain do
  begin
    showmessage(reg.MatchedText);
    showmessage(reg.Groups[0]);
  end;
end;
  1. 首先确保在Uses里引用了RegularExpressionsCore名空间,不过你应该引用了,否则var reg:TPerlRegEx这一句就会报错;

  2. 不知道是不是版本不同的原因,新版本里的TPerlRegEx类把MatchedExpression和SubExpressions这两个属性取消了(这是Delphi的一个大问题,老是不向下兼容,新版本不支持旧版本的代码,恼火),相应的属性分别改为MatchedText和Groups;