我想正则表达式写到具有以下格式正则表达式匹配括号中的字符串
12740(34,12)的字符串[ABC(A1B2C3)(a2b3c4)......] myId123
目前,我有这样的事情
\((?P<expression>\S+)\)
但有了这个,我可以只收集方括号中的字符串。
是否有无论如何我可以捕捉方括号前的整数,还有方括号内的字符串。
小括号内的字符串数量将不会相同。我也可以有一个字符串,它看起来像这样
10(3,2),[ABC(A1B2C3)] myId1
我知道我可以写使用蛮力上述表达一个简单的正则表达式。但任何人都可以请帮我写一个方括号内的字符串数量不断变化。
((?P<front>^\d+)|\((?P<expression>\S+)\)|(?P<id>[a-zA-Z0-9]+)$)
Regex101:提前
你不能使用're'的单个正则表达式来捕获任意数量的组。您在比赛中只有与该模式中定义的数量相同的组。 –
@WiktorStribiżewohk,删除.. !! –
@WiktorStribiżew这是一个愚蠢的问题(无论OP是否意识到)每个“用正则表达式解析HTML/XML”的问题。我们没有一个规范的“正则表达式/ CFG”问题来关闭它们吗?也许我们应该。 –