python re.sub解析
1.pydoc modules
通过pydoc modules获取安装的模块
2.re.sub(pattern, repl, string, count=0, flags=0)
If it is a callable, it’s passed the match object and must return a replacement string to be used.
如果传递给repl是一个函数,而不是字符串时,便可以获取pattern模式中的分组信息,从而方便我们做替换.
3.示例
test_data = “aabb”
def data_swp(matchobj):
if(matchobj):
str_data = “{}{}”.format(matchobj.group(“test1”),matchobj.group(“test0”))
eturn str_data
new_data = re.sub(r’(?P\w)(?P=test0)(?P\w)(?P=test1)’,data_swp,test_data)
示例中定义了data_swp函数,repl中调用data_swp,可以获取pattern的分组信息,从而生成替换信息.
4.re.split(pattern, string[, maxsplit=0, flags=0])
根据匹配类型对string进行数据拆分.如果分组没用(),那么返回的是不包含匹配内容的列表,否则返回包含匹配内容的列表.
5.实例
test_data = “aa1bb2cc3dd”
matchdata = re.split(r’(\d+)’,test_data) -->> [‘aa’, ‘1’, ‘bb’, ‘2’, ‘cc’, ‘3’, ‘dd’]
matchdata = re.split(r’\d+’,test_data) -->> [‘aa’, ‘bb’, ‘cc’, ‘dd’]
6.re.match
re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配
本文地址:https://blog.csdn.net/weixin_39662684/article/details/108864052