c#正则表达式捕获
我正在匹配一个重复组,该重复组包含可选组和非可选组的混合。当我迭代捕获时,捕获集合总是折叠的,也就是说,它们不会为不匹配的项插入null元素 是否有办法保留捕获集合中的匹配顺序,以便将任何省略的可选项作为null插入,从而确保捕获集合元素在组之间对应 为了澄清,假设我的重复(父)组被匹配了三次,并且在三次匹配中的一次匹配中,一个可选的子组被省略,但在其他两个组中存在,我最终得到了子组的一个捕获集合,它比其他捕获集合少一个元素。如何知道哪些父组省略了可选项c#正则表达式捕获,c#,regex,capturecollection,C#,Regex,Capturecollection,我正在匹配一个重复组,该重复组包含可选组和非可选组的混合。当我迭代捕获时,捕获集合总是折叠的,也就是说,它们不会为不匹配的项插入null元素 是否有办法保留捕获集合中的匹配顺序,以便将任何省略的可选项作为null插入,从而确保捕获集合元素在组之间对应 为了澄清,假设我的重复(父)组被匹配了三次,并且在三次匹配中的一次匹配中,一个可选的子组被省略,但在其他两个组中存在,我最终得到了子组的一个捕获集合,它比其他捕获集合少一个元素。如何知道哪些父组省略了可选项 我认为可以使用捕获集合项的Index属性
我认为可以使用捕获集合项的Index属性并检查它是否在父组的范围内,但如果非匹配项在捕获集合中返回null项,则会更容易。有没有办法实现这一点?而不是
(模式)?
使用(模式)
,你应该得到你想要的…你能提供一些示例代码来演示吗?