Replace (Regex function): Difference between revisions
No edit summary |
No edit summary |
||
Line 12: | Line 12: | ||
<td>The string to test against the Regex object.</td></tr> | <td>The string to test against the Regex object.</td></tr> | ||
<tr><th>replacement</th> | <tr><th>replacement</th> | ||
<td>The string that replaces the substrings of <var class="term">string</var> that <var class="term">regex</var> matches. Except when the <code>A</code> option is specified (as described at [[Regex_processing#Common_regex_options|Common regex options]]), you can include markers in the <var class="term">replacement</var> value to indicate where to insert corresponding captured strings — strings matched by capturing groups (parenthesized subexpressions) in the | <td>The string that replaces the substrings of <var class="term">string</var> that <var class="term">regex</var> matches. Except when the <code>A</code> option is specified (as described at [[Regex_processing#Common_regex_options|Common regex options]]), you can include markers in the <var class="term">replacement</var> value to indicate where to insert corresponding captured strings — strings matched by capturing groups (parenthesized subexpressions) in the regular expression, if any. | ||
<p> | <p> | ||
These markers are in the form <var class="term">$n</var>, where <i>n</i> is the number of the capture group, and 1 is the number of the first capture group. <i>n</i> must not be 0 or contain more than 9 digits. If there was no <i>n</i>th capture group corresponding to the <var class="term">$n</var> marker in a replacement string, the (literal) value of <var class="term">$n</var> is used in the replacement string instead of the empty string. <code>xxx$1</code> is an example of a valid replacement string, and <code>$0yyy</code> is an example of an invalid one. Or you can use the format <var class="term">$mn</var>, where <i>m</i> is one of the following modifiers: | These markers are in the form <var class="term">$n</var>, where <i>n</i> is the number of the capture group, and 1 is the number of the first capture group. <i>n</i> must not be 0 or contain more than 9 digits. If there was no <i>n</i>th capture group corresponding to the <var class="term">$n</var> marker in a replacement string, the (literal) value of <var class="term">$n</var> is used in the replacement string instead of the empty string. <code>xxx$1</code> is an example of a valid replacement string, and <code>$0yyy</code> is an example of an invalid one. Or you can use the format <var class="term">$mn</var>, where <i>m</i> is one of the following modifiers: |
Revision as of 21:11, 23 March 2022
Replace regex match(es) (Regex class)
This function replaces the parts of a string that match the regular expression in the Regex object and returns the string with the replacements.
Syntax
%string = regex:Replace( string, [replacement], [Options= string])
Syntax terms
A string of single letter options, which may be specified in uppercase or lowercase, in any combination, and blank separated or not. These options are a subset of Common regex options. The only acceptable options (case-independent) areA
for "as-is", G
for "global" (replace all occurrences), and T
for trace.%string | A copy of the input string after matches are replaced using the appropriate replacement string. | ||||
---|---|---|---|---|---|
regex | The Regex object. | ||||
string | The string to test against the Regex object. | ||||
replacement | The string that replaces the substrings of string that regex matches. Except when the A option is specified (as described at Common regex options), you can include markers in the replacement value to indicate where to insert corresponding captured strings — strings matched by capturing groups (parenthesized subexpressions) in the regular expression, if any.
These markers are in the form $n, where n is the number of the capture group, and 1 is the number of the first capture group. n must not be 0 or contain more than 9 digits. If there was no nth capture group corresponding to the $n marker in a replacement string, the (literal) value of $n is used in the replacement string instead of the empty string.
The only characters you can escape in a replacement string are dollar sign ( An invalid replacement string results in request cancellation. | ||||
options |
Usage notes
- If the regular expresion specified in the constructor call was Unicode, this method causes request cancellation. To test if a Regex object was created with a Unicode regular expression check the IsUnicode property.
- There is no way to undo the
A
,G
, andT
options if they were specified on the constructor so if a Regex objects sometimes needs these options and sometimes not, they should be specified on each Replace call.