Subset (Stringlist function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (1 revision)
Line 1: Line 1:
{{Template:Stringlist:Subset subtitle}}
{{Template:Stringlist:Subset subtitle}}


This method creates a Stringlist that is a subset of the method Stringlist. The subset is created by selecting all entries that contain a specified search string.
This method creates a <var>Stringlist</var> that is a subset of the method <var>Stringlist</var>. The subset is created by selecting all entries that contain a specified search string.


==Syntax==
==Syntax==
Line 8: Line 8:
<table class="syntaxTable">
<table class="syntaxTable">
<tr><th>%outlist</th>
<tr><th>%outlist</th>
<td>A reference to a Stringlist which is set to the newly-created subset Stringlist.</td></tr>
<td>A reference to a <var>Stringlist</var> which is set to the newly-created subset <var>Stringlist</var>.</td></tr>
<tr><th>sl</th>
<tr><th>sl</th>
<td>A Stringlist object.</td></tr>
<td>A <var>Stringlist</var> object.</td></tr>
<tr><th>string</th>
<tr><th>string</th>
<td>The string to be located. This argument is called the search string.</td></tr>
<td>The string to be located. This argument is called the search string.</td></tr>
Line 18: Line 18:
<td>The ending column number of the range of columns in which the search string must be located. This is an optional argument which defaults to 6124. If '''endcol''' is a non-zero integer, the width of the column range is reduced to a maximum of 256.</td></tr>
<td>The ending column number of the range of columns in which the search string must be located. This is an optional argument which defaults to 6124. If '''endcol''' is a non-zero integer, the width of the column range is reduced to a maximum of 256.</td></tr>
<tr><th>caseflag</th>
<tr><th>caseflag</th>
<td>An indicator for case-insensitive comparisons. If this argument is a non-zero integer, the string comparisons use the Stringlist item data translated to uppercase (so the search string should be passed as an uppercase value). This is an optional argument, and it defaults to zero. If this argument is non-zero, the width of the column range specified by the second and third argument values is reduced to a maximum of 256.</td></tr>
<td>An indicator for case-insensitive comparisons. If this argument is a non-zero integer, the string comparisons use the <var>Stringlist</var> item data translated to uppercase (so the search string should be passed as an uppercase value). This is an optional argument, and it defaults to zero. If this argument is non-zero, the width of the column range specified by the second and third argument values is reduced to a maximum of 256.</td></tr>
</table>
</table>


==Usage notes==
==Usage notes==
<ul><li>If the input Stringlist was associated with an image, by either the BindImage or New method, the Subset output Stringlist identifier is associated with the same image.<li>While, under <var class=product>Sirius Mods</var> Version 6.6 and later, Stringlist items can be longer than 6124 bytes long, the Subset method will only look for matches in the first 6124 bytes of any Stringlist item.</ul>
<ul><li>If the input <var>Stringlist</var> was associated with an image, by either the BindImage or New method, the Subset output <var>Stringlist</var> identifier is associated with the same image.<li>While, under <var class=product>Sirius Mods</var> Version 6.6 and later, <var>Stringlist</var> items can be longer than 6124 bytes long, the Subset method will only look for matches in the first 6124 bytes of any <var>Stringlist</var> item.</ul>


==Examples==
==Examples==
In the following example, a Stringlist is loaded from the contents of a procedure, and all lines that contain the string "%critical" (independent of case) are displayed:
In the following example, a <var>Stringlist</var> is loaded from the contents of a procedure, and all lines that contain the string "%critical" (independent of case) are displayed:


<pre>
<pre>

Revision as of 21:30, 18 January 2011

Create Stringlist subset (Stringlist class)


This method creates a Stringlist that is a subset of the method Stringlist. The subset is created by selecting all entries that contain a specified search string.

Syntax

%outList = sl:Subset( string, [[StartColumn=] number], [[EndColumn=] number], - [[CaseIndependent=] number], [[ArbitraryQuote=] number])

Syntax terms

%outlist A reference to a Stringlist which is set to the newly-created subset Stringlist.
sl A Stringlist object.
string The string to be located. This argument is called the search string.
startcol The starting column number of the range of columns in which the search string must be located. This is an optional argument, and it defaults to 1.
endcol The ending column number of the range of columns in which the search string must be located. This is an optional argument which defaults to 6124. If endcol is a non-zero integer, the width of the column range is reduced to a maximum of 256.
caseflag An indicator for case-insensitive comparisons. If this argument is a non-zero integer, the string comparisons use the Stringlist item data translated to uppercase (so the search string should be passed as an uppercase value). This is an optional argument, and it defaults to zero. If this argument is non-zero, the width of the column range specified by the second and third argument values is reduced to a maximum of 256.

Usage notes

  • If the input Stringlist was associated with an image, by either the BindImage or New method, the Subset output Stringlist identifier is associated with the same image.
  • While, under Sirius Mods Version 6.6 and later, Stringlist items can be longer than 6124 bytes long, the Subset method will only look for matches in the first 6124 bytes of any Stringlist item.

Examples

In the following example, a Stringlist is loaded from the contents of a procedure, and all lines that contain the string "%critical" (independent of case) are displayed:

%list = new
%rc = $procopn('BIGPROC', 'PROCFILE')
%list:appendOpenProcedure

%list = %list:subset('%CRITICAL', , , 1)
%listrint