试图匹配字符串中由噪声字符分隔的“foo”或“bar”的第一个实例,例如“basdldfnmewoor”,它应该首先与'bar'匹配,重点强调:“basdldFnmewOOr”
它保证包含“foo”或“bar”中的一个或两个,所有垃圾字符都是[a-z]
这是我的正则表达式/函数 .
def first_foobar(mystring):
foo = re.search("\w*?(f)\w*?(o)\w*?(o)|\w*?(b)\w*?(a)\w*?(r)",mystring)
if foo.group(1) == "f":
return("foo")
else:
return("bar")
我在这做错了什么?是否有更多的pythonic方式来做到这一点?它似乎永远不会匹配|后的第二个正则表达式
1 回答
bar
中的b
将在4th
组中