美文网首页
正则表达式

正则表达式

作者: 慕名66 | 来源:发表于2018-09-30 14:32 被阅读0次

    1.字符匹配规则

        [0-9]:  匹配任意一位0-9的数字

        [xyz]: 字符集合。匹配所包含的任意一个字符。例如, '[abc]' 可以匹配 "plain" 中的 'a'。

        [^xyz]: 负值字符集合。匹配未包含的任意字符。例如, '[^abc]' 可以匹配 "plain" 中的'p'、'l'、'i'、'n'。

        [a-z]: 字符范围。匹配指定范围内的任意一个字符。例如,'[a-z]' 可以匹配 'a' 到 'z' 范围内的任意小写字母字符。

        [A-Z] //匹配所有的大写字母

        [a-zA-Z] //匹配所有的字母,区分大小写

        ^:匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符本身,请使用 \^。

        $:匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 '\n' 或 '\r'。要匹配 $ 字符本身,请使用 \$。

        ( ):标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 \( 和 \)。

        +:匹配前面的字符一次或多次。要匹配 + 字符,请使用 \+。

        *:匹配前面的字符可以不出现,也可以出现一次或者多次(0次、或1次、或多次)。

        ?:匹配前面的字符0个或1个(0次、或1次)

         {n}:  n 是一个非负整数,匹配确定的n次字符

         {n,}:  n 是一个非负整数匹配至少n次

         {n,m}: m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次,请注意在逗号和两个数之间不能有空格

          . :  匹配除换行符 \n 之外的任何单字符。要匹配 . ,请使用 \. 。

          [:标记一个中括号表达式的开始。要匹配 [,请使用 \[。

           \:  将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, 'n' 匹配字符 'n'。'\n' 匹配换行符。序列 '\\' 匹配 "\",而 '\(' 则匹配 "("。

            {:  标记限定符表达式的开始。要匹配 {,请使用 \{。

            |:  指明两项之间的一个选择。要匹配 |,请使用 \|。

            \b: 匹配一个单词边界,也就是指单词和空格间的位置。例如, 'er\b' 可以匹配"never" 中的 'er',但不能匹配 "verb" 中的 'er'。

            \B: 匹配非单词边界。'er\B' 能匹配 "verb" 中的 'er',但不能匹配 "never" 中的 'er'。

            \d: 匹配一个数字字符。等价于 [0-9]。

            \D: 匹配一个非数字字符。等价于 [^0-9]。

    2.普通字符

        普通字符包括没有显式指定为元字符的所有可打印和不可打印字符。这包括所有大写和小写字母、所有数字、所有标点符号和一些其他符号。

    3.特殊字符

            所谓特殊字符,就是一些有特殊含义的字符,如 runoo*b 中的 *,简单的说就是表示任何字符串的意思。如果要查找字符串中的 * 符号,则需要对 * 进行转义,即在其前加一个 \(runo\*ob 匹配 runo*ob)。

            ^:匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符本身,请使用 \^。

    ^ 和 [^指定字符串] 之间的区别:

           ^ 单独使用时指的是匹配字符串开始的位置

            [^指定字符串],^在[ ]中使用时指的是除指定字符串以外的其他字符串

          例:  (^[0-9])+ //匹配有一至多个数字的字符串组合 

           例:  [^[0-9]]+ // 匹配有一至多个不含数字的字符串组合 

                $:匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 '\n' 或 '\r'。要匹配 $ 字符本身,请使用 \$。

            ( ):标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 \( 和 \)。

    4.限定符

            限定符用来指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。有 * 或 + 或 ? 或 {n} 或 {n,} 或 {n,m} 共6种。

            +:匹配一个或多个,代表前面的字符必须至少出现一次(1次或多次)

            *:匹配前面的字符可以不出现,也可以出现一次或者多次(0次、或1次、或多次)。

            ?:匹配前面的字符0个或1个(0次、或1次)

            {n}:n 是一个非负整数,匹配确定的n次字符

            {n,}:n 是一个非负整数匹配至少n次

            {n,m}:m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次,请注意在逗号和两个数之间不能有空格

    相关文章

      网友评论

          本文标题:正则表达式

          本文链接:https://www.haomeiwen.com/subject/etrboftx.html