Python 自1.5版本起增加了re 模块
正则表达式常用的功能就是匹配查找和替换功能。
- 查找
re.match从字符串的开始匹配
re.search匹配整个字符串
则匹配失败,函数返回None
匹配分组对象通过group(num)或者groups来获取
pattern:匹配的正则表达式
string:要匹配的字符串。
flags:标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。 - match
re.match(pattern, string, flags=0)
- search
re.search(pattern, string, flags=0)
- 替换
re.sub(pattern, repl, string, count=0)
- pattern : 正则中的模式字符串。
- repl : 替换的字符串,也可为一个函数。
- string : 要被查找替换的原始字符串。
- count : 模式匹配后替换的最大次数,默认 0 表示替换所有的匹配。
import re
s = "a123b456"
def doSomething(matched):
value = matched.grounp('value')//默认取的是字符串
return value*2
print(re.sub("(?P<value>\d+)'",soSomething,s))
//a112233b445566
支持的匹配修饰符
修饰符 | 解释 |
---|---|
re.I | 使匹配对大小写不敏感 |
re.L | 做本地化识别(locale-aware)匹配 |
re.M | 多行匹配,影响 ^ 和 $ |
re.S | 使 . 匹配包括换行在内的所有字符 |
re.U | 根据Unicode字符集解析字符。这个标志影响 \w, \W, \b, \B. |
re.X | 该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解。 |
网友评论