Fandom

Second Life in Japan

スクリプターズカフェ/ログ/文字列置換処理

483このwikiの
ページ数
新しいページをつくる
トーク0 シェアする

Scripters_cafeログ


08/12/20 編集

文字列中にある特定の文字列を一括置換する処理についてです。

まず、LSL には文字列の一括置換を行う専用の関数はありません。したがって、次のような関数を使って文字列置換用の関数を定義します。

具体的には llSubStringIndex で置換対象文字列の場所を探し、見つかったインデックスに対して文字列を挿入・削除します。


しかし、さらにうまいやり方が Second Life Wiki の Script Library に投稿されています。

string strReplace(string str, string search, string replace) {
    return llDumpList2String(llParseStringKeepNulls((str = "") + str, [search], []), replace);
}
//The Combined Library is comprised of about 55 functions all of which are released under CC-by v3.0 license

こちらの方法では、llParseStringKeepNulls と llDumpList2String を組み合わせています。 LSL スクリプトのでループ処理などを行わず、組み込み関数の内部でほとんどすべての処理が行われるため、処理も高速です。



このページのTinyURL:http://tinyurl.com/SC-string-replace

広告ブロッカーが検出されました。


広告収入で運営されている無料サイトWikiaでは、このたび広告ブロッカーをご利用の方向けの変更が加わりました。

広告ブロッカーが改変されている場合、Wikiaにアクセスしていただくことができなくなっています。カスタム広告ブロッカーを解除してご利用ください。

Fandomでも見てみる

おまかせWiki