我未能多次匹配嵌套捕获组,结果只给了我 last 内部捕获。
输入字符串:9
正则表达式:=F2=0B=E2some text =C2=A3
它返回的捕获组是:
第1组:
(\=([0-9A-F][0-9A-F]))+
=F2=0B=E2
第2组:
=C2=A3
E2
但我需要第2组返回:
A3
F2
0B
和
E2
C2
每个外部团体。
这有可能吗?
答案 0 :(得分:2)
您只需访问match.Groups[2].Captures
集合。
请参阅regex demo
您需要的是CaptureCollection。见Regex.Match
reference:
Captures
获取捕获组匹配的所有捕获的集合,以最左上第一顺序(如果正则表达式使用RegexOptions.RightToLeft
选项修改,则为最内 - 最右 - 第一顺序)。该集合可能包含零个或多个项目。(继承自Group。)
以下sample demo输出Groups[2]
CaptureCollection(F2
,0B
,E2
,C2
,{{}的所有捕获内容1}}):
A3