正则表达式的学习(一)
语法:
“.” 匹配任何字符
eg: b. 以b开头的任意字符
" ^":以XXX开头
eg:^b以b开头
"
"
:
以
X
X
X
结
尾
e
g
:
":以XXX结尾 eg:
":以XXX结尾eg:y 以y结尾的字符
限定符
" * ":限定前一个字符0到任意多次
b* :b出现0到多次 (以最长的满足要求的字符串为首选)
b+: b出现一次到多次
b? : b出现0到1次
{m,n} 匹配前一个字符m到n次
b{2,3}:限定b出现2到三次
b{4,5} 限定b出现4到5次
|:或运算符
o|cb o或者cb
eg:提取XXXX2008年8月1日XXXX中的2008
正则表达式 : .{4}(年|-)
\d 匹配一个数字,相当于[0-9]
\D 匹配非数字 相当于[^0-9]
\d{4}(年|—):匹配数字四次,紧跟年或—
\s 匹配任意空白字符 相当于 [\t\n\r\f\v]
\S 匹配任意非空白字符 相当于[ ^\t\n\f\v]
\w 匹配数字,字母,下划线中任意一个字符 [a-zA-Z0-9_]
\W 匹配非数字,字母,下划线中任意一个字符[ ^a-zA-Z 0-9]
转义符\
跟在其后的字符将失去作为特殊元字符的含义,例如\.,只能匹配. 不行匹配任意字符
字符集[ ]
可以匹配字符集中的任意字符,中括号中的“—”短横线有特殊意义,表示一个区间
“.”放到中括号内会失去通配符的意义
\b 匹配位于单词开始或者结束位置的空字符串
\B 匹配不位于单词开始或结束位置的空字符串