个人笔记:正则表达式 001

来源:互联网 发布:织梦cms怎么安装 编辑:程序博客网 时间:2024/04/29 18:37

. (在[]中使用时当作匹配目标)匹配除换行符以外的任意字符 。

 

匹配字符串的开始 :^cat 匹配 cat,catd

 

匹配字符串的结束 :$cat 匹配 cat,dddcat

 

重复零次或一次(只作用于前紧邻的元素). colou?r 匹配color,colour

Col(ou)?r匹配colr,colour

 

+ 重复1次或多次

 

* 重复零次或多次

 

[] 匹配括号中任意一个字符: c[ae]t 匹配 cat,cet,ccatd,cetdd,aacat .

 

表示一个范围(只能在[]中使用,否则当作匹配目标)[0-9],匹配任意一个数.

 

^(在[]中使用时)匹配不是中括号的字符:t[^2-6] 匹配t1,t7,t9t,不匹配t2,t6d,t34d,123t,T1

 

a|b 匹配ab:  aa|cc匹配:aa,cc ; 12(a|cd)3匹配: 12a3,12cd3

 

\< 匹配开头; \>匹配结尾

 

{n,m} 匹配重复nm : ta{1,4}d 匹配 tad,taad,taaad,taaaad 

 

e.g.:匹配24小时制时间

([01]?[0-9]|2[0-4]):[0-5][0-9]

([01]?[4-9]|[012]?[0-3]):[0-5][0-9]

 

(?: …………为表达式 :表示 不获得匹配内容

(?= ……)肯定顺序环视(从左到右查看文本)表示 获得匹配内容的前位置;比如 (?= ad) ;  获得’ab’出现的位置:匹配 t_adbc (‘_’不存在该单词中,它表示匹配的的位置)(?=ad)a 匹配 tadc a(?=ad) 匹配 taadc 不匹配 tadc

(?<= ……)肯定逆序环视(从右到左查看文本)表示 获得匹配内容的后位置,比如 (?<= ad) ;  获得’ab’出现的位置: 匹配 tad_bc (‘_’不存在该单词中,它表示匹配的的位置)

(?! ……)否定顺序环视

(?<! ……)否定逆序环视

 

\t 制表符

\s 空白

\S 除空白字符外任何字符

\w == [a-zA-Z0-9]

\W ==[^a-zA-Z0-9]

\d == [0-9]

\D ==[^0-9]

“\b”匹配单词边界(\s,\n,\t,逗号,句号为边界),不匹配任何字符。匹配的只是一个位置,这个位置的一侧是构成单词的字符,另一侧为非单词字符、字符串的开始或结束位置。“\b”是零宽度的。 

//===============================================///////

修饰符

在表达式中,如 /a[0-9]/i 这里的i是修饰符,表示匹配时无视大小写

全局匹配

宽松排列

0 0