Unspace (String function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (printtext)
m (printtext)
Line 11: Line 11:
<tr><th>string</th>
<tr><th>string</th>
<td>The input method object string</td></tr>
<td>The input method object string</td></tr>
<tr><th>Spaces</th>
<tr><th><var>Spaces</var></th>
<td><var class="term">Spaces</var> is an optional, but <var>[[Methods#Named parameters|Name-Required]]</var>, parameter, which is a string that specifies the set of characters considered to be whitespace. The default set is the blank space (<code>' '</code>) character.  If you specify multiple <var class="term">Spaces</var> characters:<ul><li>There is no separator character.<li>The first character of the string is the replacement space character: a single one of these is substituted for each sequence (which may be one) of non-leading, non-trailing Spaces characters in the method object string.</ul></td></tr>
<td><var class="term">Spaces</var> is an optional, but <var>[[Methods#Named parameters|Name-Required]]</var>, parameter, which is a string that specifies the set of characters considered to be whitespace. The default set is the blank space (<code>' '</code>) character.  If you specify multiple <var class="term">Spaces</var> characters:<ul><li>There is no separator character.<li>The first character of the string is the replacement space character: a single one of these is substituted for each sequence (which may be one) of non-leading, non-trailing Spaces characters in the method object string.</ul></td></tr>
<tr><th>Leading</th>
<tr><th><var>Leading</var></th>
<td><var class="term">Leading</var> is an optional, but <var class="term">Name-Required</var>, parameter, which is a <var>[[Boolean Enumeration]]</var> value that specifies whether to strip all leading whitespace characters. The default is <var>True</var>, strip leading whitespace.</td></tr>
<td><var class="term">Leading</var> is an optional, but <var class="term">Name-Required</var>, parameter, which is a <var>[[Boolean Enumeration]]</var> value that specifies whether to strip all leading whitespace characters. The default is <var>True</var>, strip leading whitespace.</td></tr>
<tr><th>Trailing</th>
<tr><th><var>Trailing</var></th>
<td><var class="term">Trailing</var> is an optional, but <var class="term">Name-Required</var>, parameter, which is a <var>[[Boolean Enumeration]]</var> value that specifies whether to strip all trailing whitespace characters. The default is <var>True</var>, strip trailing whitespace.</td></tr>
<td><var class="term">Trailing</var> is an optional, but <var class="term">Name-Required</var>, parameter, which is a <var>[[Boolean Enumeration]]</var> value that specifies whether to strip all trailing whitespace characters. The default is <var>True</var>, strip trailing whitespace.</td></tr>
<tr><th>Compress</th>
<tr><th><var>Compress</var></th>
<td><var class="term">Compress</var> is an optional, but <var class="term">Name-Required</var>, parameter, which is a <var>[[Boolean Enumeration]]</var> value that specifies whether to collapse non-leading, non-trailing sequences of spaces to single spaces. The default is <var>True</var>, collapse such sequences.</td></tr>
<td><var class="term">Compress</var> is an optional, but <var class="term">Name-Required</var>, parameter, which is a <var>[[Boolean Enumeration]]</var> value that specifies whether to collapse non-leading, non-trailing sequences of spaces to single spaces. The default is <var>True</var>, collapse such sequences.</td></tr>
</table>
</table>

Revision as of 00:21, 13 April 2011

Remove whitespace characters from the string (String class)

The Unspace intrinsic function removes the whitespace characters from the method object string and it returns the resulting string. Options are available to:

  • Define which character or characters are to be interpreted as whitespace
  • Remove leading whitespace, trailing whitespace, both or neither;
  • Collapse to a single whitespace character any sequences of non-leading, non-trailing whitespace

Syntax

%outString = string:Unspace[( [Spaces= string], [Leading= boolean], - [Trailing= boolean], [Compress= boolean])]

Syntax terms

%outString A variable to receive the string result of the Unspace method.
string The input method object string
Spaces Spaces is an optional, but Name-Required, parameter, which is a string that specifies the set of characters considered to be whitespace. The default set is the blank space (' ') character. If you specify multiple Spaces characters:
  • There is no separator character.
  • The first character of the string is the replacement space character: a single one of these is substituted for each sequence (which may be one) of non-leading, non-trailing Spaces characters in the method object string.
Leading Leading is an optional, but Name-Required, parameter, which is a Boolean Enumeration value that specifies whether to strip all leading whitespace characters. The default is True, strip leading whitespace.
Trailing Trailing is an optional, but Name-Required, parameter, which is a Boolean Enumeration value that specifies whether to strip all trailing whitespace characters. The default is True, strip trailing whitespace.
Compress Compress is an optional, but Name-Required, parameter, which is a Boolean Enumeration value that specifies whether to collapse non-leading, non-trailing sequences of spaces to single spaces. The default is True, collapse such sequences.

Usage notes

  • Duplicate Spaces characters are tolerated and do not affect the result.
  • Prior to Sirius Mods Version 7.8, Unspace compressed a string consisting entirely of whitespace characters to a single whitespace character. As of Version 7.8 (and also in Version 7.7 maintenance), Unspace converts a string of whitespace characters to a null string. The Version 7.8 result of

    printText {~} = X{' ':unspace}X

    is:

    ' ':unspace = XX

  • Unspace is available as of "Sirius Mods" Version 7.3.

Examples

  1. The following are example Unspace statements:

    %ls is longstring %ls = ' so me chars ' printText {~} = {%ls:unspace()} printText {~} = {%ls:unspace(Spaces='X ')} printText {~} = {%ls:unspace(leading=false)} printText {~} = {%ls:unspace(trailing=false)} printText {~} = {%ls:unspace(compress=false)}

    The results are respectively:

    %ls:unspace() = so me chars %ls:unspace(Spaces='X ') = soXmeXchars %ls:unspace(leading=false) = so me chars %ls:unspace(trailing=false) = so me chars %ls:unspace(compress=false) = so me chars

See also