今天我偶然发现了一种奇怪的行为。我无法解释,虽然我认为我对雷克斯很有经验。
print re.sub('a*|b', '', 'bcd')bcd
没有球的地方
print re.sub('a|b', '', 'bcd')光盘
这是意料之中的。
我以为失败的选择不会阻止其他人的尝试!
发布于 2014-05-20 14:52:35
a* 总是匹配( a字符的零到无限数)。
因此,您最终会在匹配的位置替换--用''替换bcd。
所以整个字符串返回。
Re.sub(模式,回购,字符串,count=0,flags=0) 返回通过替换repl替换字符串中最左边的不重叠模式出现的字符串所获得的字符串。
因此,''字符串的开始是零as的出现,并被repl替换。
https://stackoverflow.com/questions/23769359
复制相似问题