BlackSheep-LSL@Wiki

llDeleteSubString

最終更新:

mizcremorne

- view
メンバー限定 登録/ログイン

llDeleteSubString

string llDeleteSubString(string source, integer start, integer end)

文字列sourceのstart番目~end番目の文字を削除した結果の文字列を返す。
例えば"ABCDEFG"という文字列があったとき、startに2、endに4を指定すると、2番目~4番目の文字が取り除かれた文字列"ABFG"を返す。
 llDeleteSubString("ABCDEFG", 2, 4) → "ABFG"
文字列の先頭文字は0番目となるので注意すること。

startまたはendにマイナスの数値を指定した場合、「後ろから数えた位置」になる。
例えば-1であれば、後ろから1番目、すなわち最後の文字である。
従って、startが0、endが-1だった場合は最初から最後の文字全てが削除されるので空文字が返る。
 llDeleteSubString("ABCDEFG", 0, -1) → ""

さらにややこしい話だが、startにendよりも大きい値を指定した場合、start以上、end以下の文字が削除された結果が返る。
 llDeleteSubString("ABCDEFG", 4, 1) → "CD"

llDeleteSubString関数は引数に指定した文字列を変更するわけではない。
あくまでも元の文字列はそのままにして、結果を返すだけである。
元の文字列を変更したい場合は、llDeleteSubString関数の結果を元の変数に代入する必要がある。
 src = llDeleteSubString(src, 3, 6);
このようにすると、変数srcに3番目~6番目の文字を削除した結果が入る。
記事メニュー
目安箱バナー