|
|
Line 1: |
Line 1: |
| {{Template:Stringlist:Locate subtitle}}
| | #REDIRECT [[Locate and LocateUp (Stringlist functions)]] |
| | |
| This method locates a specified string in a <var>stringlist</var>.
| |
| | |
| The <var>Locate</var> method returns the item number of the <var>stringlist</var> item that contains the specified string, or it returns a 0 if no matching items are found.
| |
| | |
| ==Syntax==
| |
| {{Template:Stringlist:Locate syntax}}
| |
| ===Syntax terms===
| |
| <table class="syntaxTable">
| |
| <tr><th>%itemNum</th>
| |
| <td>A numeric variable which will be set to the item number of the first item in the <var class="term">sl</var> <var>stringlist</var> that contains the search target string, or it is set to a 0 if no items match the search criterion.</td></tr>
| |
| <tr><th>sl</th>
| |
| <td>A <var>Stringlist</var> object.</td></tr>
| |
| <tr><th>string</th>
| |
| <td>The target <var class="term">string</var> to be located. This is a required argument, and it must be no longer than 255 bytes.</td></tr>
| |
| <tr><th>start</th>
| |
| <td>A number that indicates the item number at which the search is to begin. If this argument is not specified, searching begins at the first item in the <var>stringlist</var>. Not specifying the starting item number is subtly different from specifying a starting item number of 1 -- specifying 1 is an error if the <var>stringlist</var> is empty, while no specification simply returns a 0.</td></tr>
| |
| <tr><th>startCol</th>
| |
| <td>A number that specifies the starting column of the range of columns in which the search string must be located. This is an optional argument, and it defaults to 1.</td></tr>
| |
| <tr><th>endCol</th>
| |
| <td>A number that specifies the ending column of the range of columns in which the search string must be located. This is an optional argument, and it defaults to 6124. If <var class="term">caseFlag</var> is a non-zero integer, the width of this column range is reduced to a maximum of 256.</td></tr>
| |
| <tr><th>caseFlag</th>
| |
| <td>An indicator for case-insensitive comparisons. If this argument is a non-zero integer, the string comparisons use <var>stringlist</var> item data is 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 it is 1, the width of the searched column range is reduced to a maximum of 256.</td></tr>
| |
| </table>
| |
| | |
| ==Usage notes==
| |
| <ul><li><var>Locate</var> returns a 0 if the indicated string is not found, and it cancels the request for all other errors.<li>Although under <var class="product">Sirius Mods</var> Version 6.6 and later, <var>stringlist</var> items can be longer than 6124 bytes, <var>Locate</var> will only look for matches in the first 6124 bytes of any <var>stringlist</var> item.</ul>
| |
| | |
| ==Examples==
| |
| <Ol><li>The following code locates a string in columns 31 through 40 of <var>stringlist</var> <code>%list</code>:
| |
| | |
| <p class="code">%num = %list:locate('Eudaemonic', , 31, 40)
| |
| </p></ol>
| |
| | |
| ==See also==
| |
| {{Template:Stringlist:Locate footer}}
| |