:
编译正则表达式模式,返回一个对象。可以把常用的正则表达式编译成正则表达式对象,方便后续调用及提高效率。
re.compile(pattern, flags=0)
- pattern 指定编译时的表达式字符串
- flags 编译标志位,用来修改正则表达式的匹配方式。支持 | 同时匹配
flags 标志位参数:
- () :使匹配对大小写不敏感
- () :做本地化识别(locale-aware)匹配
- () :多行匹配,影响 ^ 和 $
- () :使 . 匹配包括换行在内的所有字符
- ():根据Unicode字符集解析字符。这个标志影响 \w, \W, \b, \B.
- ():该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解。
使用 compile :
>>> import re
>>> some_text = 'a,b,,,,c d'
>>> reObj = re.compile('[, ]+')
>>> reObj.split(some_text)
['a', 'b', 'c', 'd']
不使用 compile:
>>> import re
>>> some_text = 'a,b,,,,c d'
>>> re.split('[, ]+',some_text)
['a', 'b', 'c', 'd']