正则:
单字符 | 解释 |
---|---|
. | 匹配除换行符之外任意字符, |
\d | 匹配数字0-9 == [0-9] => ^\D |
\D | 匹配非数字 |
\s | 匹配空白字符(空格,换行,\n \r \t) |
\S | 匹配非空白字符 |
\w | 匹配单词字符[a-zA-Z0-9_] |
\W | 匹配非单词字符 |
^ | 以什么为开头 |
$ | 以什么为结尾 |
[0-9a-z] | 表示匹配数字0-9和字母a-z |
[^a-z] | 不匹配a-z之间的字符 |
多字符 | (贪婪模式) |
---|---|
* | 匹配*号前的字符任意次 |
+ | 匹配+号前的字符至少一次 |
? | 匹配?号前的字符0-1次 |
多字符(非贪婪模式)
*?
+?
??
\ 或
() 分组
re模块 | 意思 |
---|---|
re.match(): | 匹配字符串开头,符合正则规则,则返回结果,没有匹配到返回None,属于单次匹配 |
re.search(): | 从字符串开头,在整个字符串中进行匹配,符合正则规则,则返回结果,没有匹配到返回None,属于单次匹配 |
re.findall(): | 在整个字符串中匹配所有符合正则规则的结果,返回一个列表 |
re.finditer(): | 在整个字符串中匹配所有符合正则规则的结果,返回一个可迭代对象 |
re.sub() | :在整个字符串中替换所有符合正则表达式的子串 |
re.split(): | 根据正则表达式,分割字符串,返回一个列表 |