re.sub(pattern,repl,string,count = 0,flags = 0)
- re.sub用于替换字符串中的匹配项
-
个人理解
:返回将string中的pattern部分替换为repl的字符串 - 返回通过替换repl替换字符串中最左侧不重叠的pattern的字符串获取的字符串。
- 如果没有找到模式,则字符串不会更改。
- repl可以是一个字符串或一个函数;
- 如果是字符串,则会处理其中的任何反斜杠转义。 也就是说,\ n转换为单个换行符,\ r转换为回车符,依此类推。 未知的转义,如\&被遗忘。
- count默认为0,表示每个匹配项都替换。
>>> s
'asasddas:'
>>> re.sub(r'\:','',s)
'asasddas'
如果repl
是一个函数,则会对每个不重叠的模式发生调用。 该函数采用单个匹配对象参数,并返回替换字符串。 例如:
>>> def dashrepl(matchobj):
... if matchobj.group(0) == '-': return ' '
... else: return '-'
>>> re.sub('-{1,2}', dashrepl, 'pro----gram-files')
'pro--gram files'
>>> re.sub(r'\sAND\s', ' & ', 'Baked Beans And Spam', flags=re.IGNORECASE)
'Baked Beans & Spam'