2.2. Python正则表达式的语法

其实,其详细语法,可以参考Python自带的帮助(help)文件

可以通过在帮助文件的搜索框中输入re,然后就可以找到“(re.MatchObject attribute)”,双击,即调转到对应的re模块的内容的详细解释部分了。

2.2.1. re模块中的语法总结

关于re模块的基本语法,简单总结如下:

表 2.1. Python中re模块中的特殊字符

. 匹配任意字符
[] 用来匹配一个指定的字符类别,所谓的字符类别就是你想匹配的一个字符集,对于字符集中的字符可以理解成或的关系
^
对于字符串,表示字符串的开头
对于^加上一个其他数字或字符,表示取反。比如,[^5]表示除了5之外的任意字符。[^^]表示除了^字符之外任意字符。
$ 匹配字符串的末尾,或者匹配换行之前的字符串末尾
* 对于前一个字符重复0到无穷次
+ 对于前一个字符重复1到无穷次
? 对于前一个字符重复0到1次
{m,n} 对于前一个字符重复次数在为m到n次。
{0,} == *
{1,} ==
{0,1} == ?
{m} 对于前一个字符重复m次

表 2.2. Python中re模块中特殊转义序列(字符)

\A 匹配字符串的开头
\b 匹配一个空字符(仅对一个单词word的开始或结束有效)
\B 与\b含义相反
\d 匹配任何十进制数;它相当于类 [0-9]
\D 匹配任何非数字字符;它相当于类 [^0-9]
\s 匹配任何空白字符;它相当于类 [ \t\n\r\f\v]
\S 匹配任何非空白字符;它相当于类 [^ \t\n\r\f\v]
\w 匹配任何字母数字字符;它相当于类 [a-zA-Z0-9_]
\W 匹配任何非字母数字字符;它相当于类 [^a-zA-Z0-9_]
\Z 匹配字符串的结尾