LlListFindListNext/ja
Jump to navigation
Jump to search
LSL ポータル | 関数 | イベント | 型 | 演算子 | 定数 | 実行制御 | スクリプトライブラリ | カテゴリ別スクリプトライブラリ | チュートリアル |
要約
関数: integer llListFindListNext( list src, list test, list instance );testがsrc内でn番目のインスタンスのインデックスを返します。を integer で返します。
• list | src | – | 検索対象(ヘイスタック) | |
• list | test | – | 検索する対象(針) | |
• list | instance | – | 返すべきインスタンス(針) |
testがsrc内で見つからない場合、-1が返されます。
リスト内の最初のエントリのインデックスは0です。
インスタンスパラメータを追加し、n番目の一致を選択できるllListFindListの拡張です。
llListFindListNext(src, test, 0);は、機能的にはllListFindList(src, test);と同等です。
[ 'Resident', 'Alexia', 'Resident', 'Bob', 'Resident', 'Steve', 'Resident', 'Evil' ]のようなリストがある場合、
テストが[ 'Resident' ]で、インスタンスが0、1、2、3の場合、それぞれ0、2、4、6のインデックスが返されます。
4番目以降のインスタンスを選択すると見つからず、-1が返されます。
逆インデックスもサポートされています。インスタンスが-1、-2、-3、-4の場合、それぞれ6、4、2、0が返されます。
-5以下の場合も再び-1が返されます。
testがsrcの最後のインデックスで見つかる場合、正のインデックスが返されます(5つのエントリの5番目は4を返します)。
警告
- 厳密な型一致と大文字小文字の区別が強制されます。
- "1" != 1
- "1.0" != 1.0
- 1 != 1.0
- "a822ff2b-ff02-461d-b45d-dcd10a2de0c2" != (key)"a822ff2b-ff02-461d-b45d-dcd10a2de0c2"
- "Justice" != "justice"
- testがempty listの場合、返される値は0であり、-1ではありません。
サンプル
default
{
touch_end(integer i)
{
list myList = [];
list toFind = [];
llSay(0, "both lists empty (expect '0', early abort): " + (string)llListFindListNext(myList, toFind, 0));
myList = [1,2];
//Consistent with behavior of llListFindList
llSay(0, "toFind empty (expect immediate match at 0): " + (string)llListFindListNext(myList, toFind, 0));
llSay(0, "toFind empty (expect immediate match at 1): " + (string)llListFindListNext(myList, toFind, 1)); myList = [];
toFind = [1,2];
llSay(0, "myList empty, toFind populated (expect -1): " + (string)llListFindListNext(myList, toFind, 0));
//indices: 0 1 2 3 4 5 6 7 8 9 10 11 12 13
myList = ["A", 0, "B", 1, "C", 2, "A", 0, "A", 1, "A", "A", 0, <1,2,3>, "c"];
toFind = ["A", 0];
llSay(0, "llListFindListNext(myList, toFind, 0) (expect '0'): " + (string)llListFindListNext(myList, toFind, 0));
llSay(0, "llListFindListNext(myList, toFind, 1) (expect '6'): " + (string)llListFindListNext(myList, toFind, 1));
llSay(0, "llListFindListNext(myList, toFind, 2) (expect '11'): " + (string)llListFindListNext(myList, toFind, 2));
llSay(0, "llListFindListNext(myList, toFind, 3) (expect '-1'): " + (string)llListFindListNext(myList, toFind, 3));
llSay(0, "llListFindListNext(myList, toFind, -1) (expect '11'): " + (string)llListFindListNext(myList, toFind, -1));
llSay(0, "llListFindListNext(myList, toFind, -2) (expect '6'): " + (string)llListFindListNext(myList, toFind, -2));
llSay(0, "llListFindListNext(myList, toFind, -3) (expect '0'): " + (string)llListFindListNext(myList, toFind, -3));
llSay(0, "llListFindListNext(myList, toFind, -4) (expect '-1'): " + (string)llListFindListNext(myList, toFind, -4)); toFind = [3];
llSay(0, "3 not matched with vector<1,2,3> content (expect '-1'): " + (string)llListFindListNext(myList, toFind, 0));
toFind = [<1,2,3>];
llSay(0, "Find a vector: (expect '13'): " + (string)llListFindListNext(myList, toFind, -1));
toFind =[<1,2,3>, "c"];
llSay(0, "Find a vector: (expect '13'): " + (string)llListFindListNext(myList, toFind, -1));
toFind =[ "c"];
llSay(0, "Find last element in reverse (expect '14'): " + (string)llListFindListNext(myList, toFind, -1));
llSay(0, "Find last element fwd (expect '14'): " + (string)llListFindListNext(myList, toFind, 0));
llSay(0, "Find last element with llListFindList (expect '14'): " + (string)llListFindList(myList, toFind)); }
}
関連項目
関数
• | llSubStringIndex | – | Find a string in another string |
特記事項
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。