我找不到更具描述性的标题,但这里有一个示例:
import re
m = re.search(r"\((?P<remixer>.+) (Remix)\)", "Title (Menda Remix)")
m.group("remixer") # returns 'Menda' OK
m = re.search(r"\((?P<remixer>.+) (Remix)\)", "Title (Blabla) (Menda Remix)")
m.group("remixer") # returns 'Blabla) (Menda' FAIL
这个正则表达式找到第一个括号,我想匹配最后一个括号,以便始终得到“Menda”。我已经使用额外的函数解决了这个问题,但我想要一种使用相同正则表达式的更干净、更一致的方法。
非常感谢大家。
最佳答案
re.search(r"\((?P<remixer>[^)]+) (Remix)\)", "Title (Blabla) (Menda Remix)")
关于python - 正则表达式中的最后一个匹配符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2434749/