我找到了两种在Python中提取匹配的方法:
1
def extract_matches(regexp, text):
matches = re.match(regexp, text)
if matches:
return matches.group(1)
2
def extract_matches(regexp, text):
try:
return re.findall(regexp, text)[0]
except IndexError:
return None
您建议我使用哪一个?你知道其他任何方法吗?
谢谢,Boda Cydo。
答案 0 :(得分:6)
我会更频繁地使用re.search
(返回任何匹配,而不仅仅是一个被限制为从字符串开头开始的re.match
!)如果我'我正在寻找一场比赛,re.finditer
如果我想循环所有比赛。永远不会re.findall
如果我只追求一场比赛,那就是浪费精力而没有上升空间!