Delphi 正则表达式语法(6): 贪婪匹配与非贪婪匹配

2020-12-13 14:08

阅读:379

YPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">

标签:style   blog   http   color   os   ar   sp   strong   div   

Delphi 正则表达式语法(6): 贪婪匹配与非贪婪匹配

//贪婪匹配
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := 标题内容‘;
  reg.RegEx   := ‘<.>‘; //将会全部匹配, 因为两头分别是: 
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

  ShowMessage(reg.Subject); //返回: ◆

  FreeAndNil(reg);
end;

//非贪婪匹配
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := 
标题内容‘;
  reg.RegEx   := ‘<.>‘; // *? 是非贪婪匹配方法之一, 将匹配每组 
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

  ShowMessage(reg.Subject); //返回: ◆◆◆标题◆◆◆内容◆◆

  FreeAndNil(reg);
end;


//更多贪婪与非贪婪匹配对照:
 贪婪匹配   非贪婪匹配 
描述
? ?? 0 个或 1 个
+ +? 1 个或多个
* *? 0 个或多个
{n} {n}? n 个
{n,m} {n,m}? n - m 个
{n,} {n,}? n 个或多个

Delphi 正则表达式语法(6): 贪婪匹配与非贪婪匹配

标签:style   blog   http   color   os   ar   sp   strong   div   

原文地址:http://www.cnblogs.com/honeynm/p/4058701.html


评论


亲,登录后才可以留言!