我需要一行正则表达式来满足捕获0到多个组的需要。这些行始终以单个“ {”开头,然后是一个数字,然后是一个冒号……即以正则表达式表示的{%d:
,然后继续捕获,直到其碰到右花括号}
下面是一些示例行:
{1:23842039423409}
{2:JSHDF98343SSDSDASASDSASDSAD993}{1:JSHDF98343993}
{2:JSHDF98343993}{1:23842039423409}{1:BLHASD9293}
{2:{JSHDF98343993}{1:23842039423409}{1:BLHASD9293}
{4missing_colon_not_to_be_captured}
{missing_number_not_to_be_captured}{2:CAPTURE_THIS}
通过对多个组重复使用正则表达式,我得到了几乎可以起作用的东西,但认为这样做不是正确的方法,但是正在努力了解如何使其完全起作用。
([{%d:][^}]*})([{%d:][^}]*})
将捕获在一行上要捕获两个以上事物的组,但是显然只会捕获前2个组,即第2行中的2个组,第3行中的前2个组(但第3个组则没有) ),第4行中的前2个组(而不是第3组),等等。
我尝试了其他几种尝试,但均未成功。感谢帮助!