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

Delphi 正则表达式语法(1): 关于大小写与中文

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

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

//替换一般字符串
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘我爱DELPHI, 但Delphi不爱我!‘;
  reg.RegEx   := ‘Delphi‘;
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

  ShowMessage(reg.Subject); //返回: 我爱DELPHI, 但◆不爱我!

  FreeAndNil(reg);
end;

//不区分大小写
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘我爱DELPHI, 但Delphi不爱我!‘;
  reg.RegEx   := ‘Delphi‘;
  reg.Replacement := ‘◆‘;
  reg.Options := [preCaseLess]; //不区分大小的设定, 默认是区分的
  reg.ReplaceAll;

  ShowMessage(reg.Subject); //返回: 我爱◆, 但◆不爱我!

  FreeAndNil(reg);
end;

//试试中文替换
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘我爱DELPHI, 但Delphi不爱我!‘;
  reg.RegEx   := ‘我‘;
  reg.Replacement := ‘◆‘;
  reg.ReplaceAll;

  ShowMessage(reg.Subject); //返回: ◆爱DELPHI, 但Delphi不爱◆!

  FreeAndNil(reg);
end;

//如果不区分大小写, 竟然也不区分中文字了
var
  reg: TPerlRegEx;
begin
  reg := TPerlRegEx.Create(nil);

  reg.Subject := ‘我爱DELPHI, 但Delphi不爱我!‘;
  reg.RegEx   := ‘我‘;
  reg.Replacement := ‘◆‘;
  reg.Options := [preCaseLess]; //也设定不区分大小
  reg.ReplaceAll;

  ShowMessage(reg.Subject); //返回: ◆◆DELPHI, ◆Delphi◆◆◆!

  FreeAndNil(reg);
end;
//我测试了不同的汉字, 除了乱以外,没有规律; 所有如果操作汉字暂时不要指定 preCaseLess

Delphi 正则表达式语法(1): 关于大小写与中文

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

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

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