-
字符的表示
.
任意一个字符,除了换行[a-f]
、[A-D]
、[0-9]
、[bgj]
范围内的任意一个字符\w
字母、数组和下划线组成的任意字符\W
\d
数字\D
非数字\s
空白\S
非空白
-
量词(数量)的表示
*
0或多个+
1或多个?
0或1个{n}
n个{n,}
至少n个{n,m}
n~m个
-
分组表示
( )
普通的分组表示,多个正则分组时,search()、groups()返回是元组(?P<name> 字符+数量)
带有名称的分组,多个正则分组时,search()、groupdict()返回是字典,字典的key即是分组名。
-
Python中的正则模块
-
re.compile()一次生成正则对象,可以多次匹配查询
-
re.match(正则对象,字符串)
-
re.search()
text = '1231bc90xx' re.sub('\d+', '120', text) #将text中的所有数字替换成'120' #输出 '120bc120xx'
-
re.findall()
-
re.sub() 替换
-
re.split()
-
问题
- compile() / match() / search() 三者之间的区别
- search() / findall() 区别
- 贪婪模式和非贪婪模式