Before (String function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
{{Template:String:Before subtitle}}
{{Template:String:Before subtitle}}
<var>Before</var> operates on a string and returns the portion of that string prior to the user-specified delimiter.  To get the portion of the string after a delimiter, use the <var>[[After (String function)|After]]</var> string method.


<var>Before</var> operates on a string and returns the portion of that string prior to the user-specified delimiter.  To get the portion of the string after a delimiter, use the <var>[[After (String function)|After]]</var> string method.
==Syntax==
==Syntax==
{{Template:String:Before syntax}}
{{Template:String:Before syntax}}
===Syntax terms===
===Syntax terms===
<table class="syntaxTable">
<table class="syntaxTable">
<tr><th>%outString</th>
<tr><th nowrap>%outString</th>
<td>A string or longstring variable.  if a string is specified it must be long enough to hold the resulting parsed string. If a string is defined shorter than needed to hold the result, a request canceling error occurs.</td></tr>
<td>A <var>String</var> or <var>Longstring</var> variable that must be long enough to hold the resulting parsed string. If a defined string length is shorter than needed to hold the result, a request canceling error occurs.</td></tr>
 
<tr><th>string</th>
<tr><th>string</th>
<td>A string or longstring variable that holds the string to be parsed.</td></tr>
<td>A <var>String</var> or <var>Longstring</var> variable that holds the string to be parsed.</td></tr>
 
<tr><th>substring</th>
<tr><th>substring</th>
<td>A string or longstring that holds the separator character or characters on which parsing occurs.</td></tr>
<td>A <var>String</var> or <var>Longstring</var> variable that holds the separator character or characters on which parsing occurs.</td></tr>
 
<tr><th><var>Start</var></th>
<tr><th><var>Start</var></th>
<td>number<br/>The starting point for parsing. The default value is 1, indicating the beginning of the string.  This is a name-optional argument and cannot be 0.  If a value larger than the string is specified, the method always returns a null string.</td></tr>
<td>A number that is the starting point for parsing. The default value is 1, indicating the beginning of the string.  This is a [[Notation_conventions_for_methods#Named_arguments|name allowed]] argument, and it cannot be 0.  If a value larger than the string is specified, the method returns a null string.</td></tr>
</table>
</table>
==Usage notes==
==Usage notes==
If a starting value is entered, the %outString is the content of the string beginning at the specified start point and ending at either the character before the first delimiter encountered after the start point, or at the end of the string.  See the examples.
<ul>
The delimiter string is not a list of individual delimiters, but a single delimiter which may be multiple characters. In other words, if your delimiter is 'ok', the method looks for occurrences of those two lower-case letters and returns a value before said occurrence,
<li>As the examples below show, if a starting value is entered, the <var class="term">%outString</var> value is the content of the string beginning at the specified start point and ending at either of these:
This method is always case-sensitive.
<ul>
<li>The character before the first delimiter encountered after the start point.
<li>The end of the string.   
</ul> </li>
 
<li>The delimiter string is <i>not</i> a list of individual delimiters, but a single delimiter which may be multiple characters. In other words, if your delimiter is <code>ok</code>, the method looks for occurrences of those two lowercase letters and returns a value from the string that precedes the occurrence of those letters. </li>
 
<li><var>Before</var> is always case-sensitive. </li>
</ul>
 
==Examples==
==Examples==
The following request prints  
The following request prints  
<p><code>I am the Eggman</code></p>
<code>I am the Eggman</code>:
<p class="code">begin
<p class="code">begin
   %x is string len 64 initial('I am the Eggman!  I am the Walrus!  Koo Koo Kachoo!')
   %x is string len 64 initial('I am the Eggman!  I am the Walrus!  Koo Koo Kachoo!')
Line 29: Line 42:
</p>
</p>


The following request prints  
The following request prints <code>Eggman</code>:
<p><code>Eggman!</code></p>
<p class="code">begin
<p class="code">begin
   %x is string len 64 initial('I am the Eggman!  I am the Walrus!  Koo Koo Kachoo!')
   %x is string len 64 initial('I am the Eggman!  I am the Walrus!  Koo Koo Kachoo!')
Line 37: Line 49:
</p>
</p>


The following prints each blank-delimited word, one at a time.
The following prints each blank-delimited word, one at a time:
<p class="code">begin
<p class="code">begin
   %x is string len 64 initial('I am the Eggman!  I am the Walrus!  Koo Koo Kachoo!')
   %x is string len 64 initial('I am the Eggman!  I am the Walrus!  Koo Koo Kachoo!')
Line 48: Line 60:


==See also==
==See also==
<ul>
<li><var>[[After (String function)|After]]</var></li>
</ul>
{{Template:String:Before footer}}
{{Template:String:Before footer}}
The <var>[[After (String function)|After]]</var> string method.

Latest revision as of 20:04, 3 September 2015

Part of string before a substring (String class)

[Introduced in Model 204 7.5]

Before operates on a string and returns the portion of that string prior to the user-specified delimiter. To get the portion of the string after a delimiter, use the After string method.

Syntax

%outString = string:Before( substring, [Start= number])

Syntax terms

%outString A String or Longstring variable that must be long enough to hold the resulting parsed string. If a defined string length is shorter than needed to hold the result, a request canceling error occurs.
string A String or Longstring variable that holds the string to be parsed.
substring A String or Longstring variable that holds the separator character or characters on which parsing occurs.
Start A number that is the starting point for parsing. The default value is 1, indicating the beginning of the string. This is a name allowed argument, and it cannot be 0. If a value larger than the string is specified, the method returns a null string.

Usage notes

  • As the examples below show, if a starting value is entered, the %outString value is the content of the string beginning at the specified start point and ending at either of these:
    • The character before the first delimiter encountered after the start point.
    • The end of the string.
  • The delimiter string is not a list of individual delimiters, but a single delimiter which may be multiple characters. In other words, if your delimiter is ok, the method looks for occurrences of those two lowercase letters and returns a value from the string that precedes the occurrence of those letters.
  • Before is always case-sensitive.

Examples

The following request prints I am the Eggman:

begin %x is string len 64 initial('I am the Eggman! I am the Walrus! Koo Koo Kachoo!') printText {%x:before('!')} end

The following request prints Eggman:

begin %x is string len 64 initial('I am the Eggman! I am the Walrus! Koo Koo Kachoo!') printText {%x:before('!',start=10)} end

The following prints each blank-delimited word, one at a time:

begin %x is string len 64 initial('I am the Eggman! I am the Walrus! Koo Koo Kachoo!') repeat while %x:length print %x:before(' ') %x = %x:after(' ') end repeat end

See also