• 009.EscapeRegExChars


    类型:function

    可见性:public

    所在单元:RegularExpressionsCore

    父类:TPerlRegEx

    把转义字符变成原意字符

    例如d意为0~9某个数字,通过此函数转换后则变成d字符,不存在转义,效果和\d一样

    测试代码:

    program Project1;
    
    {$APPTYPE CONSOLE}
    
    uses
        System.SysUtils, System.RegularExpressionsCore;
    
    var
        regular: TPerlRegEx;
    
    begin
        try
            //使用EscapeRegExChars将+变成普通字符,不在有匹配后面多个的效果
            regular := TPerlRegEx.Create;
            regular.Subject := 'This a+b b+c test d str';
            regular.RegEx := regular.EscapeRegExChars('a+b');
            regular.Replacement := '*';
            regular.ReplaceAll;
            Writeln(regular.Subject);
    
            //直接用将+号变成普通字符,和使用 EscapeRegExChars转换后效果一样
            regular.RegEx := 'b+c';
            regular.Replacement := '#';
            regular.ReplaceAll;
            Writeln(regular.Subject);
    
            //将d变成普通字符替换掉
            regular.RegEx := regular.EscapeRegExChars('d');
            regular.Replacement := '?';
            regular.ReplaceAll;
            Writeln(regular.Subject);
            Readln;
            FreeAndNil(regular);
            { TODO -oUser -cConsole Main : Insert code here }
        except
            on E: Exception do
                Writeln(E.ClassName, ': ', E.Message);
        end;
    
    end.

    结果:

  • 相关阅读:
    CF1328B K-th Beautiful String
    CF1327B Princesses and Princes
    CF750D New Year and Fireworks
    CF57C Array
    洛谷P5661 公交换乘(CSP-J 2019 T2)
    Docker原理:Cgroup
    Docker原理:Namespace
    Anaconda软件安装使用问题
    初步了解Unix系统的I/O模式
    深入理解索引和AVL树、B-树、B+树的关系
  • 原文地址:https://www.cnblogs.com/cause/p/3677075.html
Copyright © 2020-2023  润新知