【备忘】Python3 正则表达式小结

字符匹配

有少数特殊的字符我们称之为元字符(metacharacter),它们并不能匹配自身,它们定义了字符类、子组匹配和模式重复次数等。

元字符的完整列表:

.   ^   $   *   +   ?   { }   [ ]   \   |   ( )

注释:如果没有这些元字符,正则表达式就变得跟字符串的 find() 方法一样平庸了......

 

要消除元字符的特殊功能,用反斜杠 \ 。反斜杠后边跟元字符去除特殊功能,反斜杠后边跟普通字符实现特殊功能。

 .    这个元字符, 匹配除了换行符以外的任何字符。如果设置了 re.DOTALL 标志,将匹配包括换行符在内的任何字符。

 

指定范围用方括号 [ ],比如 [a-z]。

 

重复的次数

 * 这个元字符,用于指定前一个字符匹配0次、1次或者多次

+,用于指定前一个字符匹配1次或者多次。

 ?,用于指定前一个字符匹配0次或者1次

最灵活的应该是元字符 {m,n}(m 和 n 都是十进制整数),上边讲到的几个元字符都可以使用它来表达,它的含义是前一个字符必须匹配 m 次到 n 次之间。

省略 m,将被解释为下限 0;省略 n 则会被解释为无穷大(事实上是 20 亿)。但注意,正则表达式里边不能随意添加空格,不然会改变原来的含义。

 

 

 正则表达式特殊符号及用法

【备忘】Python3 正则表达式小结_第1张图片

你可能感兴趣的:(python)