正则表达式常用符号

来源:互联网 发布:网络电视伴侣apk 编辑:程序博客网 时间:2024/06/06 06:48

* 匹配前面的字符/子表达式或括号里的字符 0次或多次

a*b*result: aaaaa,aaabbb,bbbbb

+   匹配前面的字符/子表达式或括号里的字符至少1次

a+b+result: aaaab,abbbb

[ ]   匹配任意一个字符,相当于在这个集合里任选一个

[A-Z]*result: FEATURE,PART,NOTICE

( )   表达式编组,在正则表达式的规则里编组会优先运行

(a*b)*result: aaabaab,abaaab,ababaaaabab

{m,n} 匹配前面的字符/子表达式或括号里的字符 m 到次到 n 次,包含 m 或 n

a{2,3}b{2,3}result: aabbb,aaabb,aabb,aaabbb

[^]   匹配任意一个不在中括号里的字符

[^A-Z]*result: apple,qwerty,lowercase

|   匹配任意一个由竖线分割的字符/子表达式

b(a|i|e)dresult: bad,bid,bed

.   匹配任意单个字符,包括符号/数字和空格等

b.dresult: b$d,bgd,b2d

^ 指定字符串开始位置的字符或子表达式

^aresult: apple,account,aad

\ 转义字符,把有特殊含义的字符转换成字面形式

\.\|\\result: .|\

$ 常用在正则表达式的末尾,表示从字符串的末端匹配。如果不用它,每个正则表达式实际都带着 .* 模式,只会从字符串开头进行匹配。这个符号可以看成是 ^ 符号的反义词

[A-Z]*[a-z]*$result: ABCabc,feddsf,Bdsf

?!   不包含的意思。通常放在字符或正则表达式的前面,表示字符不能出现在目标字符串里。如果要在整个字符串中全部排除某个字符,就加上 ^ 和 $ 符号

^((?![A-Z]).)*$result: hello!,i'm not here,i have 5$