我正在尝试分析以下乳胶字符串:
\graphicspath{
{outputs/tikz/turnover/}
{outputs/tikz/health/}
{outputs/tikz/flows/}
{outputs/model/figs/compare/}
{outputs/model/figs/sensitivity/}
{outputs/model/figs/flows/}
}
我的正则表达式(python)是:'\\graphicspath\{\s*?(\{.*?\}\s*?)*\}'
(带有全局&;多行标志),
我认为这会收集6条不同的路径。
相反,只有最后一个组与内部组匹配:{outputs/model/figs/flows/}
为什么其他路径不匹配?似乎{ }
内的非贪婪*?
比组外的*
更贪婪,后者应该重复组。谢谢你
所有路径都与重复的组模式匹配,但只有最后一条路径存储为组值
您可以更改regex以使用非捕获组
(?:)
提取一个组中的所有路径或
re.findall
/re.finditer
此正则表达式括号内的所有路径:相关问题 更多 >
编程相关推荐