美文网首页
正则表达式

正则表达式

作者: 无名网客 | 来源:发表于2017-07-01 11:45 被阅读0次

    正则表达式是一种窥视字符串结构的语法规则,是一个特定的格式化模式,可以匹配、替换、截取匹配的字符串。

    行定位符

    ^   表示行的开始

    $   表示行的结束

    如:

    ^tm  表示的是以tm开头的一个行 ,tm query is correct

    tm$  则匹配的是 ,   query is correct by tm

    tm   则以上两者都可以匹配

    单词定界符

    字符类

    正则表达式是区分大小写的,忽略大小写则需要“[]”。

    如,我需要匹配一个tm字符串,不区分大小写,则格式是:

    [Tt][Mm]

    选择字符( | )

    类似程序开发中的“或”。同样,需要匹配一个tm字符串,不区分大小写。还可以写为:

    t|Tm|M

    连字符( - )

    如果需要匹配一个字母,写为[a,b,c,d,e,f,g,…A,B,C,D,E,F,G….]会很繁琐也会很累。

    使用连字符则表示一定范围的意思,则字母就可以写为:

    [a-zA-Z]

    排除字符( [^] )

    匹配不符合规则的变量,类似取反的意思。

    [^a-zA-Z]

    表示的是匹配不以字母和下划线开头的变量名

    限定符( ? * + {n, m} )

    限界符

    说明

    Demo

    ?

    匹配前面的字符零次或一次

    colou?r  , 可以匹配colour 或 color

    +

    匹配前面的字符一次或多次

    Go+gle   , 匹配 gogle 到 go…gle

    *

    匹配前面的字符零次或多次

    go*gle   , 匹配 ggle 到 go…gle

    {n}

    匹配前面的字符n次

    go{2}gle  , 只匹配 google

    {n,}

    匹配前面的字符至少n次

    go{2,}gle  , 匹配 google 到 go…gle

    {n,m}

    匹配前面的字符至少n次,最多m次

    go{0,2}gle  , 匹配 ggle , gogle  , google

    点号字符( . )

    匹配除换行符外的任意一个字符

    说明

    表达式

    Demo

    匹配以s开头、t结尾、中间包含一个字母的单词

    ^s.t$

    sat、set、sit

    匹配第一个字符时r,第三个是s,最后一个是t的字符

    ^r.s.*t$

    rast、risat、restet

    括号字符( ( ) )

    你没猜错,和我们平时的计算式中括号的作用一样,改变计算的优先级

    如,

    (fa|mo)ther

    先匹配的是括号内的|,再匹配括号外的。匹配的单词为:father,mother

    转义字符( \ )

    如“.”,“?”,“\”等字符已经有了自己的特殊含义,如果想使用本身的字符含义则需要在字符前加一个“\”来转义。

    比如我们要匹配这么一个IP地址127.0.0.1

    [0-9]{1,3}(\.[0-9]{1,3}){3}

    反斜线( \ )

    表示预定义字符集

    预定义字符

    说明

    \d

    任意一个十进制数,相当于[0-9]

    \D

    任意一个非十进制数

    \s

    任意一个空白字符(空格、换行符、换页符、回车、制表),即[\f\t\r\n]

    \S

    任意一个非空白字符

    \w

    任意一个单词字符,相当于[a-zA-Z0-9_]

    \W

    任意一个非单词字符

    定义断言的限定符

    限定符

    说明

    \b

    单词定界符,用来匹配字符串中的某些位置

    \B

    非单词定界符序列

    \A

    总是能够匹配带搜索文本的起始位置

    \Z

    表示在未指定任何模式下的匹配的字符,通常是字符串的末尾位置

    \z

    子匹配字符串的末尾,而不考虑任何的换行符

    \G

    当前匹配的起始位置

    相关文章

      网友评论

          本文标题:正则表达式

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