RegExp.Replace (gb.pcre)
Static Function Replace ( Subject As String, Pattern As String, Replace As String [ , CompileOptions As Integer, ExecOptions As Integer ] ) As String
自从 3.5
Find all occurences of the specified
Pattern in the
Subject, and return a string where they are all replaced by the
Replace string.
If the
Pattern has submatches, then they can be substituted in the
Replace string, by using the same syntax
as the
Subst$ function:
&1
is replaced by the first submatch,
&2
by the second, and so on.
The pattern is always compiled by default with the
Ungreedy compile flag set, i.e. the greediness of all quantifiers is inverted.
In particular the "+" and "*" quantifiers are ungreedy.
自从 3.9.3
You can turn this behavior off by setting the
RegExp.Greedy flag in
CompileOptions.
Because the greediness of quantifiers is reversed by default, it is advisable not to confuse your future self and to avoid ungreedy versions of
quantifiers, i.e. "+?" and "*?", if possible. Set the
RegExp.Greedy flag instead.
Examples
Print RegExp.Replace("How much wood would a woodchuck chuck if a woodchuck could chuck wood ?", "(chuck|wood)", "[&1 norris]")
How much [wood norris] would a [wood norris][chuck norris] [chuck norris] if a [wood norris][chuck norris] could [chuck norris] [wood norris] ?
See also