Replace (String function): Difference between revisions
mNo edit summary |
|||
(2 intermediate revisions by one other user not shown) | |||
Line 8: | Line 8: | ||
<tr><th>%outString</th> | <tr><th>%outString</th> | ||
<td>A string variable to receive the modified input <var class="term">string</var>.</td></tr> | <td>A string variable to receive the modified input <var class="term">string</var>.</td></tr> | ||
<tr><th>string</th> | <tr><th>string</th> | ||
<td>The <var class="term">string</var> to which the method is applied.</td></tr> | <td>The <var class="term">string</var> to which the method is applied.</td></tr> | ||
<tr><th>substring</th> | <tr><th>substring</th> | ||
<td>The <var class="term">substring</var> that the method attempts to replace in the input <var class="term">string</var>. If <var class="term">string</var> contains no occurrences of <var class="term">substring</var>, <var class="term">%outstring</var> is set to a copy of <var class="term">string</var>. If <var class="term">substring</var> is null or longer than 255 characters, the request is cancelled.</td></tr> | <td>The <var class="term">substring</var> that the method attempts to replace in the input <var class="term">string</var>. If <var class="term">string</var> contains no occurrences of <var class="term">substring</var>, <var class="term">%outstring</var> is set to a copy of <var class="term">string</var>. If <var class="term">substring</var> is null or longer than 255 characters, the request is cancelled.</td></tr> | ||
<tr><th>replacement</th> | <tr><th>replacement</th> | ||
<td>A string that contains the characters that replace the specified <var class="term">substring</var>. If <var class="term">replacement</var> is:<ul><li><b><i>not specified</i></b>, <var class="term">%outstring</var> is set to a copy of <var class="term">string</var>;<li><b><i>longer than 255 characters</i></b>, the request is cancelled;<li><b><i>null</i></b>, the <var class="term">substring</var> characters are removed from <var class="term">string</var>.</ul></td></tr> | <td>A string that contains the characters that replace the specified <var class="term">substring</var>. If <var class="term">replacement</var> is:<ul><li><b><i>not specified</i></b>, <var class="term">%outstring</var> is set to a copy of <var class="term">string</var>;<li><b><i>longer than 255 characters</i></b>, the request is cancelled;<li><b><i>null</i></b>, the <var class="term">substring</var> characters are removed from <var class="term">string</var>.</ul></td></tr> | ||
<tr><th><var>Count</var></th> | <tr><th><var>Count</var></th> | ||
<td>An optional, but | <td>An optional, but [[Notation conventions for methods#Named parameters|name required]], argument that is the number of occurrences of <var class="term">substring</var> to replace. Only values greater than 0 are valid. If <var class="term">count</var> is: | ||
<ul> | |||
<li><b><i>less</i></b> than the number of occurrences of the <var class="term">substring</var>, only the first <var class="term">count</var> occurrences are substituted. | |||
<li><b><i>greater</i></b> than or <b><i>equal</i></b> to the number of occurrences of the <var class="term">substring</var>, all occurrences of the given <var class="term">substring</var> are substituted. | |||
<li><b><i>not specified</i></b>, all occurrences are substituted.</ul></td></tr> | |||
</table> | </table> | ||
Line 24: | Line 32: | ||
==Examples== | ==Examples== | ||
The following request shows two examples of <var>Replace</var> calls against the same input string: the first call replaces two occurrences of a specified <var class="term">substring</var>; the second removes all occurrences of a different <var class="term">substring</var>. | |||
<p class="code">begin | <p class="code">begin | ||
%x is longstring | %x is longstring | ||
Line 46: | Line 54: | ||
<p class="output">%out is How much ?od ?uld a ?odchuck chuck | <p class="output">%out is How much ?od ?uld a ?odchuck chuck | ||
%out is How much would achuck chuck | %out is How much would achuck chuck | ||
</p></ | </p> | ||
The following example shows how to remove blanks: | |||
<!--SOUL.DME.276.QA in QASHR--> | |||
<p class="code">begin | |||
%x is longstring | |||
%x = 'a spaced out woodchuck' | |||
printText /{%x:replace(' ', '')}/ | |||
end | |||
</p> | |||
The result is: | |||
<p class="output">/aspacedoutwoodchuck/</p> | |||
==See also== | ==See also== | ||
{{Template:String:Replace footer}} | {{Template:String:Replace footer}} |
Latest revision as of 19:19, 7 December 2018
Replace occurrences of a substring with a substitute string (String class)
The Replace intrinsic function replaces one, or multiple, occurrences of a substring within the method object input string with a substitute string, returning the modified version of the input string.
Syntax
%outString = string:Replace( substring, replacement, [Count= number])
Syntax terms
%outString | A string variable to receive the modified input string. |
---|---|
string | The string to which the method is applied. |
substring | The substring that the method attempts to replace in the input string. If string contains no occurrences of substring, %outstring is set to a copy of string. If substring is null or longer than 255 characters, the request is cancelled. |
replacement | A string that contains the characters that replace the specified substring. If replacement is:
|
Count | An optional, but name required, argument that is the number of occurrences of substring to replace. Only values greater than 0 are valid. If count is:
|
Usage notes
- The search for the target substring is context sensitive; case matters in the attempt to find, as well as in the replacement of, the target characters.
- Calling Replace with an empty replacement string argument is equivalent to using Remove.
- Replace is available as of Sirius Mods Version 7.3.
Examples
The following request shows two examples of Replace calls against the same input string: the first call replaces two occurrences of a specified substring; the second removes all occurrences of a different substring.
begin %x is longstring %substr is string len 6 %repl is string len 2 %out is longstring %x = 'How much wood would a woodchuck chuck' %substr = 'wo' %repl = '?' %out = %x:replace(%substr, %repl, Count=2) printText {~} is {%out} %substr = ' wood' %repl = '' %out = %x:replace(%substr, %repl) printText {~} is {%out} end
The request output follows:
%out is How much ?od ?uld a ?odchuck chuck %out is How much would achuck chuck
The following example shows how to remove blanks:
begin %x is longstring %x = 'a spaced out woodchuck' printText /{%x:replace(' ', )}/ end
The result is:
/aspacedoutwoodchuck/