I understand your scepticism; this does indeed feel like one of those "How do I do X?" questions where the answer "Don't do X, do Y instead". (Is that what you meant by an "XY problem"?
My situation is basically that I need to run a config file that specifies regular-expression substitutions. Specifically, my program is generating USMARC-format bibliographic records, and a config file says things like "in the 245$a field, replace /foo/ with 'bar' globally". In fact, the config looks like this:
"245$a": [
{ "op": "regsub", "from": "foo", "to": "bar", "flags": "g" }
]
If you can think of a better way to do this, I am all ears — but bear in mind I
do need the full power of regexp substitutions, e.g. the ability to include parenthesized sub-expressions in the "from" part and
$1 back-references in the "to" part.