gpt4 book ai didi

Python正则表达式不一致

转载 作者:行者123 更新时间:2023-11-28 19:31:14 24 4
gpt4 key购买 nike

根据是否预编译正则表达式,我得到了不同的结果:

>>> re.compile('mr', re.IGNORECASE).sub('', 'Mr Bean')
' Bean'
>>> re.sub('mr', '', 'Mr Bean', re.IGNORECASE)
'Mr Bean'

Python documentation一些函数是编译正则表达式的完整功能方法的简化版本。但是它也声称 RegexObject.sub() 与 sub() 函数相同

那么这里发生了什么?

最佳答案

re.sub() 无法接受 re.IGNORECASE,出现了。

文档指出:

sub(pattern, repl, string, count=0)

Return the string obtained by replacing the leftmostnon-overlapping occurrences of the pattern in string by thereplacement repl.  repl can be either a string or a callable;if a string, backslash escapes in it are processed.  If it isa callable, it's passed the match object and must returna replacement string to be used.

然而,使用它可以代替它:

re.sub("(?i)mr", "", "Mr Bean")

关于Python正则表达式不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1943400/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com