如何重复非捕获组";子查询"
本文关键字:quot 查询 何重复 | 更新日期: 2023-09-27 18:01:12
我的Regex巫毒力量不足以击败这个:
输入:
x|a=1|b=2,y|c=3|d=4,
(如果您允许我去掉最后一个逗号,则可获得加分(
所需匹配(和组(:
x|a=1|y=2
(x,a,1,y,2(y|c=3|d=4
(y,c,3,d,4(
(如果我能说出每个小组的名字,则可获得加分(
我的失败模式:
(x|y|z)(?:'|(.+?)=(.+?))*,
基本上,我想要x、y或z,然后是所有"|"分隔的"this=that"对。
我得到的匹配(和组(:
x|a=1|b=2,
(x,b,2(y|c=3|d=4,
(y,d,4(
我在比赛中有逗号,但这没什么大不了的,主要问题是我每场比赛只得到最后一个"小组"。为什么第一个被忽略?
这是的一个不错的功能。Net Regex来捕获重复的组,类似的问题已经有了很多答案,所以我只在下面放一个链接
https://stackoverflow.com/a/11051948/1009099