fix nested captured groups indexing in replace stage #3381
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
If there is a nested captured group ex:
(?P<ip_user>^(?P<ip>\\S+) (?P<identd>\\S+) (?P<user>\\S+))
and log line11.11.11.11 - frank
,FindAllStringSubmatchIndex
would return the matched index list[[0 19 0 19 0 11 12 13 14 19]]
. There is a complete match0-19
and other submatches0-11, 12-13 ...
. This causedslice bounds out of range
error in the old code when concatenating the matched entry. This PR fixes this issue.Which issue(s) this PR fixes:
Fixes #3353
Checklist