Category:LSL 文字列
LSL ポータル | 関数 | イベント | 型 | 演算子 | 定数 | 実行制御 | スクリプトライブラリ | カテゴリ別スクリプトライブラリ | チュートリアル |
stringはテキストデータです。stringの長さは、有効なスクリプト容量の限界までです。 Stringの値はLSLテキストを定義するときに、ダブルクォーテーション(" ")て囲まれます。いくつかの文字はエスケープされる必要があるだろうけれど、stringで用いることができるでしょう。
stringは+演算子を用いて結合させることができます。
部分文字 | 置換されるもの |
---|---|
\t | 4スペース |
\n | 改行 |
\" | ダブルクオーテーション |
\\ | バックスラッシュ |
String 例: "Hello Avatar!" "Yes" "No" "It's 10 o'clock." "I am 21 years old!" "Help " + "me" EOF //以下の2つのstringは同じ値です。 "I scream,\nyou scream,\nwe all scream,\nfor ice-cream!" "I scream, you scream, we all scream, for ice-cream!" |
Note: エスケープコード(上記一覧)はスクリプトがコンパイルされるときに翻訳され、動いてる間はされません。 stringはコンパイルされたとき、結果としてスクリプト内部の\nを"改行"文字に変換するでしょう。ノートカード、チャット、httpその他から読み込むテキストはエスケープコードではチェックされませんから、ノートカードでの\n入力は自動で"改行"文字には変換されません。自らしなければなりませんが、本当に本当に必要な場合だけにすべきです。
Note: CとJavaや同様な言語からLSLに入った人は、始めたばかりの間はLSL stringのエスケープルールで混乱するでしょう。 LSLの"\n"の意味はllUnescapeURL("%0A")で、CとJavaに似てますが、"\t"の意味はllUnescapeURL("%09")よりllUnescapeURL("%20%20%20%20") が最適で、"\r"の意味はllUnescapeURL("%0D")よりも"r"が最適、などなど。
変数: string name;
string name;
宣言するstring型の変数をnameと名づけて、""にします。
• variable | name | – | 変数名 |
変数: string name = value;
string name = value;
宣言するstring型の変数をnameと名づけて、valueの値をいれます。
• variable | name | – | 変数名 | |
• expression | value | – | string 要素もしくは定型値 |
型の変換: (string)value
(string)value
valueをstring型の値に変換します。
• expression | value | – | 要素もしくは定型値 |
演算子
ほかの情報は演算子 を参照します。
結合: value1 + value2
(value1 + value2)
入力での編集以外で、2つのstringを1つのstringに結合します。value2に value1を加えて、結果のstringに返します。
• expression | value1 | – | string 要素もしくは定型値 | |
• expression | value2 | – | string 要素もしくは定型値 |
比較: value1 == value2
(value1 == value2)
2つのstringを比較して、同じ長さで同じ文字なら1を返し、そうでなければ0を返します。
この演算子はCの!strcmp(value1, value2)
と極めて似たような働きをし、従ってCやJavaでの == 演算子と直観的に異なる故に、技術的に異なるものです。
• expression | value1 | – | string 要素もしくは定型値 | |
• expression | value2 | – | string 要素もしくは定型値 |
比較: value1 != value2
(value1 != value2)
2つのstringを比較し、同じ長さで同じ文字であればzeroを返し、そうでなければ0ではないものを返します。
この演算子はCのstrcmp(value1, value2)
と極めて似た働きをし、従ってCやJavaでの != 演算子と直観的に異なる故に、技術的に異なるものです。
• expression | value1 | – | string 要素もしくは定型値 | |
• expression | value2 | – | string 要素もしくは定型値 |
例
integer int = 48934; string str = (string)int; string str_2; str_2 = str;
よく用いる関数
CombinedLibraryのString関数
• | str_replace | – | 全ての対象string内の、stringインスタンスとその他のstringを置換します。 | |
• | TrimRight | – | stringの右端から文字の余計な空白を削除します。 | |
• | TrimLeft | – | stringの左端から文字の余計な空白を削除します。 | |
• | TrimBoth | – | stringの両端から文字の余計な空白を削除します。 |
例
• | SplitLine | – | '改行'エスケープコードをstringの特定の箇所に挿入します。 |
This category currently contains no pages or media.