API version 6
iOSAndroidWindows
|
|||
|
|
|
|
|
RegexPattern |
||
|
|||
正規表現パターンを保持するクラスです。
Compileスタティックメソッドにより、指定した正規表現をコンパイルし、RegexPatternオブジェクトを生成します。
生成したRegexPatternオブジェクトは、任意の入力文字列とのマッチを行うための正規表現エンジンであるRegexMatcherクラスのオブジェクトを生成するために使用します。
1つのRegexPatternオブジェクトからは複数のRegexMathcerオブジェクトを生成できます。それぞれのRegexMatcherオブジェクトは同じ正規表現パターンを共有します。
デフォルトプロパティはPatternです。ValueTypeの指定は無効です。
1. Compileスタティックメソッドにより、正規表現をコンパイルし、RegexPatternオブジェクトを生成します。
2. 1で生成したRegexPatternオブジェクトのMatcherメソッドにより、正規表現パターンと入力文字列のマッチを行うRegexMatcherオブジェクトを生成します。
3. 2で生成したRegexMatcherオブジェクトのMatchesメソッド、Findメソッド等でマッチを行います。
/* 正規表現をコンパイルします */
var p = RegexPattern.Compile("Biz/([a-zA-Z]+)");
/* 入力文字列を設定し正規表現エンジンを生成します */
var m = p.Matcher("Biz/Browser, Biz/Designer");
/* 部分一致検索を行います */
while (m.Find()) {
/* 部分一致した部分全体を表示 */
print(m.Group());
/* 一つ目の前方参照グループを表示 */
print(" [", m.Group(1) , "]", "\n");
}
/* 全体完全一致 */
print("Matches:", m.Matches(), "\n");
/* 先頭からのマッチ */
print("LookingAt:", m.LookingAt(), "\n");
----- 実行結果 -----
Biz/Browser [ Browser ]
Biz/Designer [ Designer ]
Matches: 0
LookingAt: 1
正規表現クラスでは、ECMAScript syntaxを使用しています。
\ |
直後のメタキャラクターをクォートします。 |
^ |
行の先頭にマッチします。複数行モードでは行の始まり。 |
. |
任意のキャラクター(改行を除く)にマッチします。 |
$ |
行の終端にマッチします。複数行モードでは行の終わり。 |
| |
選択 |
() |
グループ化 |
[] |
文字クラス |
\ |
直後のメタキャラクターをクォートします。 |
^ |
最初の文字に用いた場合のみ、クラスを否定する。 |
- |
文字の範囲 |
\t |
タブ |
\v |
垂直タブ |
\n |
改行 |
\r |
リターン |
\f |
改ページ |
\cletter |
制御キャラクター |
\0 |
null |
\int |
後方参照 |
\nhhhh |
4進数キャラクター |
\xhh |
16進数キャラクター |
\w |
"単語"キャラクター(アルファベット、数字、"_")にマッチします |
\W |
単語キャラクターでないものにマッチします |
\s |
空白(whitespace)キャラクターにマッチします |
\S |
非空白キャラクターにマッチします |
\d |
数字にマッチします |
\D |
非数字にマッチします |
\b |
単語境界にマッチします |
\B |
単語境界以外にマッチします |
alnum |
英数字 |
alpha |
英字 |
blank |
空白またはタブ |
cntrl |
制御文字 |
digit |
10進数字 |
d |
10進数字 |
graph |
表可能文字 スペースを除く |
lower |
小文字の英字 |
|
表示可能文字 |
punct |
句読文字 |
space |
空白文字 |
upper |
大文字の英字 |
xdigit |
16進数字 |
w |
"単語"キャラクター(アルファベット、数字、"_") |
s |
空白(whitespace)キャラクター |
* |
ゼロ回以上の繰り返しにマッチします |
+ |
一回以上の繰り返しにマッチします |
? |
ゼロ回もしくは一回の繰り返しにマッチします |
{n} |
n回の繰り返しにマッチします |
{n,} |
少なくともn回ある繰り返しにマッチします |
{n,m} |
n回からm回の間の繰り返しにマッチします |