正则表达式—特殊表达式含义
正则表达式的字母和数字表示他们自身,但多数字母和数字前加一个反斜杠时会拥有不同的含义。
下面列出了正则表达式模式语法中的特殊元素。
1.普通字符集
1) \w
匹配字母数字及下划线
2) \W
匹配非字母数字及下划线
3) \s
匹配任意空白字符,等价于 [\t\n\r\f].
4) \S
匹配任意非空白字符
5) \d
匹配任意数字,等价于 [0-9]
6) \D
匹配任意非数字
7) \1...\9
匹配第n个分组的内容。
8) [a-zA-Z0-9]
匹配任何字母及数字
2.数量字符集
用在字符或分组符(...)之后,默认贪婪匹配,如果想抑制贪婪匹配,需在数量字符后加?,例如:\w+?
1) . 匹配任意字符,除了换行符,当re.DOTALL标记被指定时,可以匹配包括换行符的任意字符
2) *
匹配前一个字符0次1次或多次
3) +
匹配前一个字符1次或多次
4) ?
匹配前一个字符0次或1次
5) {m}
匹配前一个字符m次
6) {m,n}
匹配前一个字符m到n次
7) {m,}
匹配前一个字符至少m次
8) {,n}
匹配前一个字符0到n次,最多n次
3.边界匹配符
1) ^
匹配字符串开头,如果是多行则匹配每一行的开头
2) [^]
在[...]中,^表示否定,如非字母[^a-zA-Z],非数字[^0-9]
3) $
匹配字符串或一行的结尾,如果是多行匹配模式,则每一行的结尾
4) \A
仅匹配字符串的开始,同^
5) \b
匹配一个单词的边界,也就是指单词和空格间的位置
6) \B
等价于[^\b]表示匹配非单词边界
<