zoukankan      html  css  js  c++  java
  • Delphi 正则表达式语法(9): 临界匹配 也叫"预搜索"与"反向预搜索"

    //匹配右边
    var
      reg: TPerlRegEx;
    begin
      reg := TPerlRegEx.Create(nil);
    
      reg.Subject := 'Delphi 6; Delphi 7; Delphi 2007; Delphi Net';
      reg.RegEx   := 'Delphi (?=2007)'; // ?=
      reg.Replacement := '◆';
      reg.ReplaceAll;
    
      ShowMessage(reg.Subject); //返回: Delphi 6; Delphi 7; ◆2007; Delphi Net
    
      FreeAndNil(reg);
    end;
    
    //不匹配右边 var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.Subject := 'Delphi 6; Delphi 7; Delphi 2007; Delphi Net'; reg.RegEx := 'Delphi (?!2007)'; // ?! reg.Replacement := '◆'; reg.ReplaceAll; ShowMessage(reg.Subject); //返回: ◆6; ◆7; Delphi 2007; ◆Net FreeAndNil(reg); end;
    //匹配左边 var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.Subject := '111, 222, ¥333, ¥444'; reg.RegEx := '(?<=¥)\d{3}'; // ?<= reg.Replacement := '◆'; reg.ReplaceAll; ShowMessage(reg.Subject); //返回: 111, 222, ¥◆, ¥◆ FreeAndNil(reg); end;
    //不匹配左边 var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.Subject := '111, 222, ¥333, ¥444'; reg.RegEx := '(?<!¥)\d{3}'; // ?<! reg.Replacement := '◆'; reg.ReplaceAll; ShowMessage(reg.Subject); //返回: ◆, ◆, ¥333, ¥444 FreeAndNil(reg); end;
  • 相关阅读:
    robotframework笔记9
    robotframework笔记8
    Spring预处理
    WebStrom快捷键
    json死循环问题
    java线程与缓存
    oss文件删除策略
    Eclipse自动编译问题
    将 JAR 转为 EXE – EXE4J 的使用教程(第一期)(转载)
    将 JAR 转为 EXE – JSMOOTH 的使用教程(第二期)(转载)
  • 原文地址:https://www.cnblogs.com/del/p/1009358.html
Copyright © 2011-2022 走看看