• Search and Replace的正则表达式


    以下例子均在Search and Replace中适用,EditPlus也有正则表达式,但有点不一样。

    1.1 基本操作符

    *

    重复0次或更多次

    +

    重复一次或更多次

    重复一次

    |

    或 操作符

    非 操作符

    ^

    以^后字符开始的行

    $

    以$前字符结尾的行

    ^^

    以^^后字符开始的文件

    $$

    以$$前字符结尾的文件

    []

    范围操作符

    ()

    子串

    +n

    指定列数操作符,常与()或[]配合使用

    1.2 正则表达式的查找

    *   Zero or More Operator:匹配在()或[]中零次或更多次的表达式。*也可以单独使用,如果单独使用,将是匹配一行里从开始到结束的所有字符。也可以在*后指定字符以匹配两个或更多直至最大匹配数的表达式(可以在软件中修改)。

         例子:    *(is)              出现零次或更多次的is,如is, Mississippi

                       *[is]              出现零次或更多次的i或s,如 Some, Expression,single

                       Windows*[0-9]          以Windows为开始,随后跟着0-9字符的字符串

                       windows*[]95            以windows为开始,随后跟着任意个字符,后以95结尾的字符串

    +  One Or More Operator:重复出现1次或多次操作符。

         例子:    +(is)      匹配字符串is,Mississippi

                       w+e       匹配字符串wide,white,write,不匹配we

    ?   One Occurrence Operator:?前或后的字符串出现一次。也可以放在两个字符串之间,放在()前时,表示()内表达式出现一次。

         例子:    ?(is)              匹配       is

                       win?95  匹配       win 95,win-95,win/95

    |    Or Operator:与操作符。需要与()操作符配合使用。

         例子:    (01/|02/)+[0-9](/95|/98)   匹配       01/15/98和02/12/98  前三个字符为01/或者02/,后面出现一到多位的0-9数字,后面跟着/95或者/98

                       w*[a-z](98|NT)?        匹配       windows 98?,win NT?   以w为开始的字符串,后面跟着n(n>=1)个位的字母(必须为a到z),跟着98或者NT字符,最后以?结尾。注意:要查找?等表达式时,要使用转义符 。

    !    Not Operator:非操作符。可以与()操作符配合使用。

         例子:    ?at!((b|c)at)         匹配       mat 和 sat 而不是 bat 或者 cat。注意:双重括号的使用

                       *file!(beg*file)     匹配       a file 和 this file 而不是 beginning of file

                       *98!(Windows 98)     匹配       1998 而不是Windows 98

                       *98!(+[a-z ]98)           匹配       1998 而不是 windows 98

                       a?b?c!(aub?c)!(a?bvc)      查找aXbYc,X不是u,Y不是v

    ^  Beginning Of Line Operator:以^后字符为开始的行,注意是行而不是一个单词。

         例子:    ^the      查找以the,The,THE开头的行

                       ^(the|[a<])          查找以the或A或<开头的行

                       ^*( )BEnd *( )Exit Function              匹配       <space(s)(零个或多个空格)>Bend<接着下一行>Exit Function

    $   End Of Line Operator:以$后字符为结束的行,跟^差不多,可以配合一起使用。

    ^^       Beginning Of File Operator:以^^后字符为开始的文件。

    $$        End Of File Operator:以$$后字符为结束的文件。

    []   Range Operator:可以参照上面的例子使用,注意*[]匹配的是最大可容纳的字符串,包括一些换行符,可以在多行之间查找。

    ()   Subexpression Operator:可以参照上面的例子使用。

    +n              Column Specifier:可以参照上面的例子使用。

  • 相关阅读:
    从简单需求到OLAP的RANK系列函数
    数据库的Index Scan V.S. Rscan
    z/OS上Dataset 的移动
    如何保存CONSOLE LOG
    c#对文件进行MD5加密校验
    基于webpivottable做的透视表
    通过asp.net程序来控制自己开发的windows服务
    AES加密和解密
    C#添加日志
    cmd执行mssql脚本或者执行mysql脚本
  • 原文地址:https://www.cnblogs.com/EasonJim/p/5372499.html
Copyright © 2020-2023  润新知