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;

  • 相关阅读:
    调试D2JS
    PG 中 JSON 字段的应用
    面试----
    机器学习面试题
    闭包和装饰器
    scss-混合@mixin @include @function
    scss基本使用及操作函数
    常用的scss函数(mixin)
    二叉搜索树基本操作实现
    判断一棵树是否是二叉搜索树
  • 原文地址:https://www.cnblogs.com/honeynm/p/4058716.html
Copyright © 2011-2022 走看看