Skip to main content
 首页 » 编程设计

python之在 Python 中查找最短的正则表达式匹配

2024年08月22日36lvdongjie

我想处理这样的字符串 (a (b) c) 并且我想在处理外部括号之前先匹配内部 (b) 。但是,此代码不起作用:

>>> x='(a(b)c)' 
>>> re.search(r"\((.*?)\)", x).group(1) 
'a(b' 

有什么方法可以让 Python 找到最小匹配(即 b)而不是更长的匹配 a(b?

请您参考如下方法:

XY 问题。您无法处理最小匹配。您可以做的是找到不带括号的匹配项。

r"\(([^()]*)\)"