我的正则表达式无法正常工作。我正在向你展示before regex text
and after regex text
。我正在使用这个正则表达式re.search(r'(?ms).*?{{(Infobox film.*?)}}', text)
。您将看到我的正则表达式在之后不显示结果| country = Assam, {{IND
。我的正则表达式此时卡住了。你能帮我一下吗?谢谢
在正则表达式之前:
{{Infobox film
| name = Papori
| released = 1986
| runtime = 144 minutes
| country = Assam, {{IND}}
| language = [[Assamese language|Assamese]]
| budget =
| followed by = free
}}
正则表达式之后:
{Infobox film
| name = Papori
| released = 1986
| runtime = 144 minutes
| country = Assam, {{IND
为什么正则表达式此时卡住了?country = Assam, {{IND
编辑:期待结果
Infobox film
| name = Papori
| released = 1986
| runtime = 144 minutes
| country = Assam, {{IND}}
| language = [[Assamese language|Assamese]]
| budget =
| followed by = free
你的正则表达式正在捕获第一个之间的所有内容{{
和第一个}}
,位于信息框的“国家/地区”条目中。如果你想要第一个之间的所有内容{{
和last }}
,那么你想要使.*
通过删除大括号内的贪婪?
:
re.search(r'(?ms).*?{{(Infobox film.*)}}', text)
请注意,这将找到last }}
在输入中(例如,如果有另一个模板远低于信息框的末尾,它将找到该末尾),所以这可能不是您想要的。当您有这样的嵌套时,正则表达式并不总是最好的搜索方式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)