Difference between revisions of "LlListFindListNext/ja"

From Second Life Wiki
Jump to navigation Jump to search
(Created page with "{{LSL_Function/ja |func=llListFindListNext |func_id=201|func_sleep=0.0|func_energy=10.0 |return_type=integer |Return_text=index of the nth instance of {{LSLP|test}} in {{LSLP|...")
 
m
 
(One intermediate revision by the same user not shown)
Line 3: Line 3:
|func_id=201|func_sleep=0.0|func_energy=10.0
|func_id=201|func_sleep=0.0|func_energy=10.0
|return_type=integer
|return_type=integer
|Return_text=index of the nth instance of {{LSLP|test}} in {{LSLP|src}}.
|Return_text={{LSLP|test}}{{LSLP|src}}内でn番目のインスタンスのインデックスを返します。
|p1_type=list|p1_name=src|p1_desc=what to search in (haystack)
|p1_type=list|p1_name=src|p1_desc=検索対象(ヘイスタック)
|p2_type=list|p2_name=test|p2_desc=what to search for (needles)
|p2_type=list|p2_name=test|p2_desc=検索する対象(針)
|p3_type=list|p3_name=instance|p3_desc=which instance (needle) to return
|p3_type=list|p3_name=instance|p3_desc=返すべきインスタンス(針)
|func_footnote=If {{LSLP|test}} is not found in {{LSLP|src}}, -1 is returned.<br/>
|func_footnote={{LSLP|test}}{{LSLP|src}}内で見つからない場合、-1が返されます。<br/>
The index of the first entry in the list is {{HoverText|0|zero}}<br>
リスト内の最初のエントリのインデックスは{{HoverText|0|ゼロ}}です。<br/>
An expansion of llListFindList which adds an instance parameter to select the nth match to test parameter.<br>
インスタンスパラメータを追加し、n番目の一致を選択できるllListFindListの拡張です。<br/>
llListFindListNext(src, test, 0); is functionally equivalent to llListFindList(src, test);<br>
llListFindListNext(src, test, 0);は、機能的にはllListFindList(src, test);と同等です。<br/>
Given a list like [ 'Resident', 'Alexia', 'Resident', 'Bob', 'Resident', 'Steve', 'Resident', 'Evil' ]
[ 'Resident', 'Alexia', 'Resident', 'Bob', 'Resident', 'Steve', 'Resident', 'Evil' ]のようなリストがある場合、
using a test of [ 'Resident' ] and an instance of 0, 1, 2, 3 would return indices of 0, 2, 4, and 6 respectively.
テストが[ 'Resident' ]で、インスタンスが0、1、2、3の場合、それぞれ0、2、4、6のインデックスが返されます。
Selecting the 4th or greater instance will not be found and will return -1.<br>
4番目以降のインスタンスを選択すると見つからず、-1が返されます。<br/>
Reverse indexing is also supported. Using an instance of -1, -2, -3, -4 would respectively return 6, 4, 2, 0
逆インデックスもサポートされています。インスタンスが-1、-2、-3、-4の場合、それぞれ6、4、2、0が返されます。
And -5 and lower would again return -1<br>
-5以下の場合も再び-1が返されます。<br/>
If {{LSLP|test}} is found at the last index in {{LSLP|src}} the positive index is returned (5th entry of 5 returns 4).
{{LSLP|test}}{{LSLP|src}}の最後のインデックスで見つかる場合、正のインデックスが返されます(5つのエントリの5番目は4を返します)。
|func_desc
|func_desc
|spec
|spec
|caveats=
|caveats=
* Strict type matching and case sensitivity is enforced.
* 厳密な型一致と大文字小文字の区別が強制されます。
** "1" != 1
** "1" != 1
** "1.0" != 1.0
** "1.0" != 1.0
Line 26: Line 26:
** "a822ff2b-ff02-461d-b45d-dcd10a2de0c2" != (key)"a822ff2b-ff02-461d-b45d-dcd10a2de0c2"
** "a822ff2b-ff02-461d-b45d-dcd10a2de0c2" != (key)"a822ff2b-ff02-461d-b45d-dcd10a2de0c2"
** "Justice" != "justice"
** "Justice" != "justice"
* If {{LSLP|test}} is an {{HoverText|empty list|[]}} the value returned is {{HoverText|0|zero}} rather than -1.
* {{LSLP|test}}{{HoverText|empty list|[]}}の場合、返される値は{{HoverText|0|ゼロ}}であり、-1ではありません。
|constants
|constants
|examples=<source lang="lsl2">default
|examples=<source lang="lsl2">default
Line 72: Line 72:
|notes
|notes
|sort=ListFindList
|sort=ListFindList
|cat1=List/ja
|cat1=List
|haiku={{Haiku|List so full of things.|How do I get the right one?|Make the machine count.}}
|haiku={{Haiku|List so full of things.|How do I get the right one?|Make the machine count.}}
|cat2
|cat2

Latest revision as of 12:54, 22 November 2023

要約

関数: integer llListFindListNext( list src, list test, list instance );

testsrc内でn番目のインスタンスのインデックスを返します。を integer で返します。

• list src 検索対象(ヘイスタック)
• list test 検索する対象(針)
• list instance 返すべきインスタンス(針)

testsrc内で見つからない場合、-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が返されます。
testsrcの最後のインデックスで見つかる場合、正のインデックスが返されます(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"
  • testempty 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

特記事項

Search JIRA for related Issues

Signature

function integer llListFindListNext( list src, list test, list instance );
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。