UnicodeLeft (Unicode function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (misc formatting)
 
(6 intermediate revisions by 4 users not shown)
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 <var>[[Methods#Named parameters|Name-Required]]</var> 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.  
<p>
<var>Pad</var> is a [[Notation conventions for methods#Named parameters|name required]] parameter, and <var>Pad</var> is a <var>Unicode</var> string. Like all <var>Unicode</var> arguments, if an EBCDIC string is specified, it is, converted to <var>Unicode</var>. </p></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">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">number</var> value must be a non-negative number.  A negative number results in request cancellation. </li>
<li><var>UnicodeLeft</var> is available as of <var class="product">[[Sirius Mods|Sirius Mods]]</var> Version 7.5.</ul>
 
<li>The <var>Pad</var> parameter value must be either null or a single character.  A longer value results in a compilation error. </li>
 
<li><var>UnicodeLeft</var> is identical to <var>[[UnicodeSubstring (Unicode function)|UnicodeSubstring]]</var> with <code>1</code> as its first argument. </li>
 
<li><var>UnicodeLeft</var> is analogous to the <var>[[Left (String function)|Left]]</var> <var>String</var> intrinsic method. </li>
</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;#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;#x2122;</code> (trademark) has no Ebcdic equivalent:
 
<p class="code">%u is unicode initial('Model 204&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>


==See also==
==See also==
<ul><li><var>UnicodeLeft</var> is identical to the <var>[[UnicodeSubstring (Unicode function)|UnicodeSubstring]]</var> with a 1 for the first argument.
<li><var>UnicodeLeft</var> is analogous to the <var>[[Left (String function)|Left]]</var> <var>String</var> intrinsic method.
</ul>
{{Template:Unicode:UnicodeLeft footer}}
{{Template:Unicode:UnicodeLeft footer}}

Latest revision as of 18:31, 11 July 2017

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, and Pad is a Unicode string. Like all Unicode arguments, if an EBCDIC string is specified, it is, converted to Unicode.

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 identical to UnicodeSubstring with 1 as its first argument.
  • UnicodeLeft is analogous to the Left String intrinsic method.

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