zoukankan      html  css  js  c++  java
  • Delphi 正则表达式语法(1): 关于大小写与中文

    //替换一般字符串
    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
  • 相关阅读:
    Linux文件与文件系统的压缩
    Linux命令与文件查找
    js兼容pc和移动端的简单拖拽效果
    图片懒加载插件
    css小特效
    创建对象和方法
    距离2021年春节还剩。。。
    固定尺寸的图片焦点图案例
    数据库操作
    简单sql操作
  • 原文地址:https://www.cnblogs.com/honeynm/p/4058650.html
Copyright © 2011-2022 走看看