当前位置:编程学习 > Delphi >>

delphi的正则表达式子串替换

uses PerlRegEx; //uses 正则表达式单元 procedure TForm1.FormCreate(Sender: TObject); var reg: TPerlRegEx; //声明正则表达式变量 begin reg := TPerlRegEx.Create(nil); //建立 reg.Subject := 'sSsS'; //这是要替换的源字符串 reg.RegEx := 's'; //这是表达式, 在这里是准备替换掉的子串 reg.Replacement := '◆'; / 如何将整个‘sSsS’替换成‘s’呢?而不是将s替换成◆ / reg.ReplaceAll; //执行全部替换 ShowMessage(reg.Subject); //返回替换结果: ◆S◆S FreeAndNil(reg); //或 reg.Free end;
答案:让字符串不区分大小写就可以了!
uses
  PerlRegEx; //uses 正则表达式单元

procedure TForm1.FormCreate(Sender: TObject);
var
  reg: TPerlRegEx; //声明正则表达式变量
begin
  reg := TPerlRegEx.Create(nil); //建立

  reg.Subject := 'sSsS';    //这是要替换的源字符串
  reg.RegEx   := 's';       //这是表达式, 在这里是准备替换掉的子串
  reg.Replacement := '◆';

 //如何将整个‘sSsS’替换成‘s’呢?而不是将s替换成◆

  reg.Options := [preCaseLess];  //不区分大小的设定, 默认是区分的
  reg.ReplaceAll;           //执行全部替换

  ShowMessage(reg.Subject); //返回替换结果: ◆◆◆◆

  FreeAndNil(reg); //或 reg.Free
end;

上一个:delphi密码验证问题,请给出正确程序代码
下一个:matlab中信噪比与误码率曲线

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,