@songying
2019-11-25T15:35:13.000000Z
字数 1201
阅读 1106
python库
import re
方法 | 解释 |
---|---|
re.compile(string[,flag]) | |
re.match(pattern, string[, flags]) | |
re.search(pattern, string[, flags]) | |
re.split(pattern, string[, maxsplit]) | |
re.findall(pattern, string[, flags]) | |
re.finditer(pattern, string[, flags]) | |
re.sub(pattern, repl, string[, count]) | |
re.subn(pattern, repl, string[, count]) |
将一个正则表达式转化成一个正则表达对象,该对象可被用在 match(), search()
以及其他函数中。
- 从字符串的起始位置进行匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。
- 返回值: 成功:一个匹配的对象 失败: None
re.match(pattern, string, flags=0)
# pattern: 匹配的正则表达式
# string: 要匹配的字符串。
# flags: 标志位,用于控制正则表达式的匹配方式
- re.search 扫描整个字符串并返回第一个成功的匹配。
- 返回值: 成功: 一个匹配的对象 失败: None
re.search(pattern, string, flags=0)
# pattern: 匹配的正则表达式
# string: 要匹配的字符串。
# flags: 标志位,用于控制正则表达式的匹配方式
同样,获取的对象也可以使用group()与groups()方法。
re.sub用于替换字符串中的匹配项。
re.sub(pattern, repl, string, count=0)
# pattern: 正则中的模式字符串
# repl : 替换的字符串,也可为一个函数。
# string : 要被查找替换的原始字符串。
# count : 模式匹配后替换的最大次数,默认 0 表示替换所有的匹配。
num = re.sub(r'\D', "change", source_string)
def double(matched):
#statement
print(re.sub('(?P<value>\d+)', double, string))