regsuball
Available inall subroutines.
Replaces all occurrences of pattern
, which may be a Perl-compatible regular
expression, in input
with replacement
. If no matches are found, no
replacements are made.
Once a replacement is made, substitutions continue from the end of the
replaced buffer. Therefore, regsuball("aaa", "a", "aa")
will return a
string "aaaaaa" instead of recursing indefinitely.
This function may fail to make a replacement if the regular expression recurses
too heavily. Such a situation may occur with lookahead and lookbehind
assertions, or other recursing non-regular expressions. In this case,
fastly.error
is set to EREGRECUR
.
Groups captured with pattern
can be used in the replacement string. Read the
regsub
documentation for more information.
This function is not prefixed with the std.
namespace.
Errors
This function may fail to make a replacement if the regular expression
recurses too heavily. Such a situation may occur with lookahead and
lookbehind assertions, or other recursing non-regular expressions.
In this case, fastly.error
is set to
EREGRECUR
.
Example
set req.url = regsuball(req.url, "\+", "%2520");
Try it out
regsuball
is used in the following code examples. Examples apply VCL to real-world use cases and can be deployed as they are, or adapted for your own service. See the full list of code examples for more inspiration.
Click RUN on a sample below to provision a Fastly service, execute the code on Fastly, and see how the function behaves.
Search and replace in strings
Use regular expression substitution functions to map paths, strip extraneous slashes, and more.
Compute intersection of two lists
Useful for comparing capabilities with required permissions.