2024-05-08 00:30:36 发布
网友
str = 'an simple example' print re.sub(r'^AN', 'A', str, re.I)
应该是打印A simple example 但是,它仍然打印an simple example
A simple example
an simple example
python版本2.7(Fedora x84\u 64)
正如bereal所指出的,第三个参数是要做的替换的数量。你知道吗
re.sub的整个定义是
re.sub
def sub(pattern, repl, string, count=0, flags=0):
因此,您可以使用
print re.sub(r'^AN', 'A', str, 0, re.I)
或使用命名参数:
print re.sub(r'^AN', 'A', str, flags=re.I)
顺便说一句,str已经是python函数(但没有保留关键字), 所以重新定义str可能会导致奇怪的问题。你知道吗
str
如果要使用不敏感替换,请使用不敏感选项:
str = 'an simple example' print re.sub(r'(?i)an', 'A', str)
re.sub的最后一个参数是要执行的替换的计数。 如果要替换为选项,请编译正则表达式:
>>> r = re.compile(r'^AN', re.IGNORECASE) >>> my_str = 'AN simple example' >>> r.sub('A', my_str) 'A simple example'
正如bereal所指出的,第三个参数是要做的替换的数量。你知道吗
re.sub
的整个定义是因此,您可以使用
或使用命名参数:
顺便说一句,
str
已经是python函数(但没有保留关键字), 所以重新定义str可能会导致奇怪的问题。你知道吗如果要使用不敏感替换,请使用不敏感选项:
re.sub
的最后一个参数是要执行的替换的计数。 如果要替换为选项,请编译正则表达式:相关问题 更多 >
编程相关推荐