我正在匹配一个重复组,其中包含可选和非可选组合。当我迭代捕获时,捕获集合总是被折叠的,即它们不会为未匹配项插入空元素。
有没有办法保留捕获集合中匹配项的顺序,使得任何省略的可选项都被插入为null,从而确保跨组的捕获集合元素相对应?
为了澄清,假设我的重复(父)组被匹配三次,在其中一次匹配中省略了一个可选的子组,但在其他两个组中存在该子组,则我得到的子组的捕获集合比其他捕获集合少一个元素。我如何知道哪个父组省略了可选项?
我想这可能使用捕获集合项的Index属性,并检查它是否在父组的范围内来实现,但如果非匹配项返回捕获集合中的null项将更容易。有什么方法可以实现这一点吗?
有没有办法保留捕获集合中匹配项的顺序,使得任何省略的可选项都被插入为null,从而确保跨组的捕获集合元素相对应?
为了澄清,假设我的重复(父)组被匹配三次,在其中一次匹配中省略了一个可选的子组,但在其他两个组中存在该子组,则我得到的子组的捕获集合比其他捕获集合少一个元素。我如何知道哪个父组省略了可选项?
我想这可能使用捕获集合项的Index属性,并检查它是否在父组的范围内来实现,但如果非匹配项返回捕获集合中的null项将更容易。有什么方法可以实现这一点吗?