Test, validate and match regular expressions
Matches NUTS templating function expressions of the form ${fn.name(args)}, capturing the function name (with the fn. prefix) and its argument list. The recursive (?R) construct enables parsing of nested function calls within arguments, e.g. ${fn.concat(fn.trim(s), "x")}. Arguments may include alphanumerics, quoted strings, brackets, variable references, and whitespace. Useful for extracting or validating function invocations in NUTS-based template syntax.