您的位置:首页 > 其它

正则表达式语法

2018-01-29 18:41 232 查看
1.基本的元字符

. 匹配任意单个字符

| 逻辑或操作

[ ]
匹配字符集合中的一个字符

[^]
对字符集合求非

- 定义一个区间(例如[A-Z])

\ 对下一个字符进行转义

2.数量元字符

* 匹配前一个字符(子表达式)的零次或多次重复

*? *的懒惰型版本

+ 匹配前一个字符(子表达式)的一次或多次重复

+? +的懒惰型版本

? 匹配前一个字符(子表达式)的零次或一次重复

{n}
匹配前一个字符(子表达式)的n次重复

{m,n}
匹配前一个字符(子表达式)n次或更多次的重复

{n, }
匹配前一个字符(子表达式)n次或更多次的重复

{n, }?
{n, }的懒惰型版本

3.位置元字符

^ 匹配字符串的开头

\A 匹配字符串的开头

$ 匹配字符串的结束

\Z 匹配字符串的结束

\< 匹配单词的开头

\> 匹配单词的结束

\b 匹配单词的边界(开头和结束)

\B \b的反义

4.特殊字符元字符

[\b] 退格元字符

\c 匹配一个控制字符

\d 匹配任意数字字符

\D \d的反义

\f 换页符

\n 换行符

\r 回车符

\s 匹配一个空白字符

\S \s的反义

\t 制表符(Tab字符)

\v 垂直制表符

\w 匹配任意字母数字字符或下划线字符

\W \w的反义

\x 匹配一个十六进制数字

\0 匹配一个八进制数字

5.回溯引用和前后查找

() 定义一个子表达式

\1 匹配第一个子表达式,\2代表匹配第二个子表达式,以此类推

?= 向前查找

?<= 向后查找

?! 负向前查找

?<! 负向后查找

?() 条件(if  then)

?()| 条件(if    then    else)

6.大小写转换

\E 结束\L或\U转换

\l              把下一个字符转化为小写

\L 把后面的字符转化为小写,直到遇到\E为止

\u 把下一个字符转化为大写

\U 把后面的字符转换为大写,直到遇见\E为止

7.匹配模式

(?m) 分行匹配模式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: