Difference between revisions of "LlListFindList"
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
m (minor fix) |
Void Singer (talk | contribs) (+caveat) |
||
Line 10: | Line 10: | ||
|return_text=that is the index of the first instance of '''test''' in '''src'''. | |return_text=that is the index of the first instance of '''test''' in '''src'''. | ||
|spec | |spec | ||
|caveats=*Strict type matching and case sensitivity is enforced. | |caveats= | ||
* Strict type matching and case sensitivity is enforced. | |||
* if ('''test''' == []), return = 0 rather than -1. | |||
|constants | |constants | ||
|examples=<lsl>list numbers = [1, 2, 3, 4, 5]; | |examples=<lsl>list numbers = [1, 2, 3, 4, 5]; |
Revision as of 10:37, 31 May 2010
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: integer llListFindList( list src, list test );201 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns an integer that is the index of the first instance of test in src.
• list | src | |||
• list | test |
If test is not found in src, -1 is returned.
The index of the first entry in the list is 0
If test is found at the last index in src the positive index is returned (5th entry of 5 returns 4).
Caveats
- Strict type matching and case sensitivity is enforced.
- if (test == []), return = 0 rather than -1.
Examples
<lsl>list numbers = [1, 2, 3, 4, 5]; default {
state_entry() { integer index = llListFindList(numbers, [3]); if (index != -1) { list three_four = llList2List(numbers, index, index + 1); llOwnerSay(llDumpList2String(three_four, ",")); // Object: 3,4 } }
}</lsl><lsl>//You can also search for two items at once to find a pattern in a list list avatarsWhoFoundMagicLeaves = ["Fire Centaur","Red Leaf"]; default {
state_entry() { integer index = llListFindList(avatarsWhoFoundMagicLeaves, ["Fire Centaur","Red Leaf"]); if (index != -1) { list output = llList2List(avatarsWhoFoundMagicLeaves, index, index + 1); llOwnerSay(llDumpList2String(output, ",")); // Object: Fire Centaur, Red Leaf } }}</lsl>
Useful Snippets
An easy way to see if an item exists in a list... <lsl>if(~llListFindList(myList, (list)item)) {//it exists
//This works because ~(-1) == 0 //It saves bytecode and is faster then doing != -1
}</lsl>
See Also
Functions
• | llSubStringIndex | – | Find a string in another string | |
• | List: Find Last Index | – | Returns an integer that is the index of the last instance of test in src. | |
• | List: Multi-Find Index (First_or_Last) | – | Get first(or last) Index of any matching elements of test in src. |