Template:LSL Regular Expressions/ja

From Second Life Wiki
Jump to navigation Jump to search

正規表現

ワイルドカード
. 任意の文字に一致
アンカー
^ 文字列の先頭に一致
$ 文字列の末尾に一致
繰り返し
* 直前のアトムに0回以上一致
+ 直前のアトムに1回以上一致
? 直前のアトムに0回または1回一致
{n}

{n,}

{n, m}

直前のアトムにn回、n回以上、またはn回からm回まで一致
サブエクスプレッション
(expression) 丸括弧で囲まれたテキストはマークされたサブエクスプレッションであり、サブエクスプレッションの一部として一致したテキストは抽出されて繰り返すことができます。
選択
a | b aまたはbに一致
文字セット
[abc] 列挙された文字のいずれかに一致
[a-c] 指定された範囲の任意の文字に一致
[^abc] 列挙された文字以外の任意の文字に一致
[[:name:]] 名前付きクラスの任意の文字に一致
上記の文字セット定義は組み合わせることができます
エスケープシーケンス
特定の文字
\e ASCII 0x1B, ESC
\n 改行
\r キャリッジリターン
\t タブ
\xdd コードが dd のASCII文字に一致
単一の文字クラス
\d

\D

任意の10進数の数字に一致
  • \d → [[:digit:]] または [0-9]
  • \D → [^[:digit:]] または [^0-9]
\l

\L

任意の小文字の文字に一致
  • \l → [[:lower:]] または [a-z]
  • \L → [^[:lower:]] または [^a-z]
\s

\S

任意のホワイトスペース文字に一致
  • \s → [[:space:]] または [ \t\r\n]
  • \S → [^[:space:]] または [^ \t\r\n]
\u

\U

任意の大文字の文字に一致
  • \u → [[:upper:]] または [A-Z]
  • \U → [^[:upper:]] または [^A-Z]
\w

\W

任意の"単語"文字に一致

アルファベット、数字、アンダースコア

  • \w → [[:upper:][:lower:][:digit:]_] または [A-Za-z0-9_]
  • \W → [^[:upper:][:lower:][:digit:]_] または [^A-Za-z0-9_]
単語の境界
\< 単語の始まり
\> 単語の終わり
\b
\B 単語の境界でない

*注意* LSLでは文字列内で '\' をエスケープ文字として使用しています。上記のエスケープ文字は二重にエスケープする必要があります。つまり "\d" はLSLでは "\\d" と書く必要があります。

LSL Strings, Escape Codesを参照してください

名前付き文字クラス
alnum 任意の英数字文字
  • [[:alnum:]] → [0-9a-zA-Z]
  • [^[:alnum:]] → [^0-9a-zA-Z]
alpha 任意のアルファベット文字
  • [[:alpha:]] → [a-zA-Z]
  • [^[:alpha:]] → [^a-zA-Z]
blank 行セパレータでない任意のホワイトスペース文字
cntrl 任意の制御文字
  • [[:cntrl:]] → [\x01-\x31]
  • [^[:cntrl:]] → [^\x01-\x31]
digit

d

任意の10進数の数字
  • [[:digit:]] → [0-9]
  • [^[:digit:]] → [^0-9]
lower

l

任意の小文字の文字
  • [[:lower:]] → [a-z]
  • [^[:lower:]] → [^a-z]
print 任意の印刷可能な文字
punct 任意の句読点文字
space

s

任意のホワイトスペース文字
upper

u

任意の大文字の文字
  • [[:upper:]] → [A-Z]
  • [^[:upper:]] → [^A-Z]
word

w

任意の"単語"文字
  • [[:word:]] → [0-9a-zA-Z_]
  • [^[:word:]] → [^0-9a-zA-Z_]
xdigit 任意の16進数の数字文字
  • [[:xdigit:]] → [0-9a-fA-F]
  • [^[:xdigit:]] → [^0-9a-fA-F]