UnicodeLeft (Unicode function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
Line 4: Line 4:
==Syntax==
==Syntax==
{{Template:Unicode:UnicodeLeft syntax}}
{{Template:Unicode:UnicodeLeft syntax}}
===Syntax terms===
===Syntax terms===
<table class="syntaxTable">
<table class="syntaxTable">
<tr><th>%outUnicode</th>
<tr><th>%outUnicode</th>
<td>A <var>Unicode</var> variable to receive the result of the <var>UnicodeLeft</var> method. </td></tr>
<td>A <var>Unicode</var> variable to receive the result of the <var>UnicodeLeft</var> method. </td></tr>
<tr><th>unicode</th>
<tr><th>unicode</th>
<td>A <var>Unicode</var> string. </td></tr>
<td>A <var>Unicode</var> string. </td></tr>
<tr><th>number</th>
<tr><th>number</th>
<td>The number of the left-most characters to return. If <var class="term">unicode</var> is shorter than the requested number of characters, it is either padded to the requested length or returned with no padding, depending on the value of the <var class="term">pad</var> parameter. </td></tr>
<td>The number of the left-most characters to return. If <var class="term">unicode</var> is shorter than the requested number of characters, it is either padded to the requested length or returned with no padding, depending on the value of the <var>Pad</var> parameter. </td></tr>
 
<tr><th><var>Pad</var></th>
<tr><th><var>Pad</var></th>
<td>A single character used to pad <var class="term">unicode</var>, on the right, if it is shorter than the requested <var class="term">number</var>. <var class="term">pad</var> defaults to a null string (<code><nowiki>''</nowiki></code>) which means no padding is done. <var class="term">pad</var> is a [[Methods#Named parameters|name required]] parameter.</td></tr>
<td>A single character used to pad <var class="term">unicode</var>, on the right, if it is shorter than the requested <var class="term">number</var>. <var class="term">c</var> defaults to a null string (<tt><nowiki>''</nowiki></tt>) which means no padding is done. <var>Pad</var> is a [[Notation conventions for methods#Named parameters|name required]] parameter.</td></tr>
</table>
</table>


==Usage notes==
==Usage notes==
<ul><li>The <var class="term">number</var> value must be a non-negative number.  A negative number results in request cancellation.
<ul>
<li>The <var class="term">number</var> value must be a non-negative number.  A negative number results in request cancellation.
<li>The <var class="term">pad</var> parameter value must be either null or a single character.  A longer value results in a compilation error.
<li>The <var class="term">pad</var> parameter value must be either null or a single character.  A longer value results in a compilation error.
<li><var>UnicodeLeft</var> is available as of <var class="product">[[Sirius Mods|Sirius Mods]]</var> Version 7.5.</ul>
<li><var>UnicodeLeft</var> is available as of <var class="product">Sirius Mods</var> Version 7.5.
</ul>


==Examples==
==Examples==
<ol><li>The following statement displays <code>Model 2</code>:
<ol>
<p class="code">%u is unicode initial('Model 204&amp;amp;amp;amp;#x2122;':[[U (String function)|U]])
<li>The following statement displays <code>Model 2</code>:
<p class="code">%u is unicode initial('Model 204&amp;#x2122;':[[U (String function)|U]])
[[Intrinsic classes#printtext|printText]] {%u:unicodeLeft(7)}
[[Intrinsic classes#printtext|printText]] {%u:unicodeLeft(7)}
</p>
</p>
<li>The following statement displays <code>Model 204!!!</code>:
<li>The following statement displays <code>Model 204!!!</code>:
<p class="code">%u is unicode initial('Model 204')
<p class="code">%u is unicode initial('Model 204')
printText {%u:unicodeLeft(12, pad='!')}
printText {%u:unicodeLeft(12, pad='!')}
</p>
</p>
<li>The following statement gets a character translation exception because the <var>Unicode</var> character <code>&amp;amp;amp;amp;#x2122;</code> (trademark) has no Ebcdic equivalent:
 
<p class="code">%u is unicode initial('Model 204&amp;amp;amp;amp;#x2122;':U)
<li>The following statement gets a character translation exception because the <var>Unicode</var> character <code>&amp;#x2122;</code> (trademark) has no EBCDIC equivalent:
<p class="code">%u is unicode initial('Model 204&amp;#x2122;':U)
printText {%u:unicodeLeft(10)}
printText {%u:unicodeLeft(10)}
</p></ol>
</p></ol>

Revision as of 17:21, 6 November 2012

The left-most characters of the string (Unicode class)

UnicodeLeft returns the left-most characters of the method object string, possibly padding it on the right.

Syntax

%outUnicode = unicode:UnicodeLeft( number, [Pad= c])

Syntax terms

%outUnicode A Unicode variable to receive the result of the UnicodeLeft method.
unicode A Unicode string.
number The number of the left-most characters to return. If unicode is shorter than the requested number of characters, it is either padded to the requested length or returned with no padding, depending on the value of the Pad parameter.
Pad A single character used to pad unicode, on the right, if it is shorter than the requested number. c defaults to a null string ('') which means no padding is done. Pad is a name required parameter.

Usage notes

  • The number value must be a non-negative number. A negative number results in request cancellation.
  • The pad parameter value must be either null or a single character. A longer value results in a compilation error.
  • UnicodeLeft is available as of Sirius Mods Version 7.5.

Examples

  1. The following statement displays Model 2:

    %u is unicode initial('Model 204&#x2122;':U) printText {%u:unicodeLeft(7)}

  2. The following statement displays Model 204!!!:

    %u is unicode initial('Model 204') printText {%u:unicodeLeft(12, pad='!')}

  3. The following statement gets a character translation exception because the Unicode character &#x2122; (trademark) has no EBCDIC equivalent:

    %u is unicode initial('Model 204&#x2122;':U) printText {%u:unicodeLeft(10)}

See also

  • UnicodeLeft is identical to the UnicodeSubstring with a 1 for the first argument.
  • UnicodeLeft is analogous to the Left String intrinsic method.