正则表达式笔记摘抄

正则表达式

    表达方式

    可以用字符串字面值表达;也可以字符组简写式表达;

正则表达式将方括号、花括号本身用做元字符。视为特殊的元字符,因此方括号不参与匹配。

元字符是在正则表达式中有特殊含义的字符,也是保留字符。[0-9]这种形式的正则表达式称做字符组。

    \d,转义的小写d(\d),可以像[0-9]一样匹配任意阿拉伯数字,

    \D,用转义的大写D(\D),它匹配任何一个非数字字符。

    ^,表示“不匹配这些”或“匹配除这些以外的内容”。

         如    [^0-9]等效于[^\d]或\D表示“匹配非数字字符”

    点号(英文句号)是一个通配符,可以匹配任意字符(但某些情况下不能匹配行起始符)。

捕获分组和后向引用

先捕获才能引用

    使用()捕获,比如(\d)\d\1

         (\d)匹配第一个数字并将其捕获;

         \d匹配第二个数字(数字0)但没有捕获,因为没有括号;

          \1对捕获的数字进行反向引用

         \1引用第 1 对括号内匹配到的字符串,"/2" 引用第 2 对括号内匹配到的字符串……以此类推,如果一对括号内包含另一对括号,则外层的括号先排序号。换句话说,哪一对的左括号"(" 在前,那这一对就先排序号。

    \w,它只匹配字母、数字和下划线。在英语环境中,

        与\w匹配相同内容的字符组为:[_a-zA-Z0-9]

    \W,大写字母W匹配非单词字符:

        等效的字符组为:[^_a-zA-Z0-9]

 

量词

    ?    零个或一个(可选)  

    +    一个或多个

    *    零个或多个

posted @ 2018-07-04 18:14  Tuicy  阅读(124)  评论(0编辑  收藏  举报