I want to replace some text and have the replacement reference a regex capture group. This works fine when replacing on a single file but with with the “Find/Replace in Files” dialog I get “Failed: Captures are not allowed in pattern strings”.
I think I need to use Template / Replacement Template for this but it isn’t really clear how they work.
1 Like
I found a solution, posting it here for posterity:
Pattern
needs to be non-empty, but it doesn’t matter too much what’s in there.
Template
can be a full regex with capture groups, %s
will insert the Pattern
in the regex.
Replacement pattern
can stay as %s
.
Replacement text
can use the capture references (\1
etc) as you would expect.
Interestingly, there are some features that are supported by the single file replace that are not supported by Find/Replace in files (eg: \U...\E
to make something upper case)
2 Likes