码迷,mamicode.com
首页 > Windows程序 > 详细

Delphi 正则表达式语法(5): 边界

时间:2014-10-29 10:26:25      阅读:286      评论:0      收藏:0      [点我收藏+]

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

// \b 单词边界
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘Delphi Delphi2007 MyDelphi‘; 
  reg.RegEx   := ‘\bDelphi\b‘; //前后边界
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

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

  FreeAndNil(reg);
end;

// \b 单词边界: 左边界
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘Delphi Delphi2007 MyDelphi‘; 
  reg.RegEx   := ‘\bDelphi‘; //左边界
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

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

  FreeAndNil(reg);
end;

// \b 单词边界: 右边界
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘Delphi Delphi2007 MyDelphi‘; 
  reg.RegEx   := ‘Delphi\b‘; //右边界
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

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

  FreeAndNil(reg);
end;

// \B 非单词边界
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘Delphi MyDelphi2007 MyDelphi‘;
  reg.RegEx   := ‘\BDelphi\B‘; //现在只有 MyDelphi2007 中的 Delphi 属于非单词边界
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

  ShowMessage(reg.Subject); //返回: Delphi My◆2007 MyDelphi

  FreeAndNil(reg);
end;

// ^ 行首
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘Delphi Delphi2007 MyDelphi‘;
  reg.RegEx   := ‘^Del‘; //匹配在行首的 Del
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

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

  FreeAndNil(reg);
end;

// \A 也标记行首
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘Delphi Delphi2007 MyDelphi‘;
  reg.RegEx   := ‘\ADel‘; //匹配在行首的 Del
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

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

  FreeAndNil(reg);
end;

// $ 行尾
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘Delphi Delphi2007 MyDelphi‘; 
  reg.RegEx   := ‘phi$‘; //匹配在行尾的 phi
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

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

  FreeAndNil(reg);
end;

// \Z 也标记行尾
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘Delphi Delphi2007 MyDelphi‘;
  reg.RegEx   := ‘phi\Z‘; //匹配在行尾的 phi
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

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

  FreeAndNil(reg);
end;

// 测试时, \Z 不区分大小写; \A 区分

Delphi 正则表达式语法(5): 边界

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

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!