ストリングに対して正規表現を使用するメソッド
Flash Player 9 以降、Adobe AIR 1.0 以降
RegExp クラスには、
exec()
および
test()
の 2 つのメソッドが含まれます。
RegExp クラスの
exec()
メソッドおよび
test()
メソッドに加えて、String クラスにはストリング内で正規表現に一致する
match()
、
replace()
、
search()
、および
splice()
の各メソッドが含まれます。
test() メソッド
RegExp クラスの
test()
メソッドは、次の例で示すように、指定したストリング内に正規表現に一致する部分があるかどうかを単に判定します。
var pattern:RegExp = /Class-\w/;
var str = "Class-A";
trace(pattern.test(str)); // output: true
exec() メソッド
RegExp クラスの
exec()
メソッドは、指定したストリング内に正規表現に一致する部分があるかどうかを調べ、次の内容を格納した配列を返します。
また、この配列には、サブストリングの一致を開始したインデックス位置を示す
index
プロパティがあります。
例えば、次のようなコードがあるとします。
var pattern:RegExp = /\d{3}\-\d{3}-\d{4}/; //U.S phone number
var str:String = "phone: 415-555-1212";
var result:Array = pattern.exec(str);
trace(result.index, " - ", result);
// 7-415-555-1212
正規表現に
g
(
global
)フラグを設定して、
exec()
メソッドを繰り返し呼び出すことにより、次のように複数のサブストリングについて一致を調べることができます。
var pattern:RegExp = /\w*sh\w*/gi;
var str:String = "She sells seashells by the seashore";
var result:Array = pattern.exec(str);
while (result != null)
{
trace(result.index, "\t", pattern.lastIndex, "\t", result);
result = pattern.exec(str);
}
//output:
// 0 3 She
// 10 19 seashells
// 27 35 seashore
RegExp パラメーターを使用する String のメソッド
正規表現のパラメーターを指定できる String クラスのメソッドとしては、
match()
、
replace()
、
search()
、および
split()
があります。 これらのメソッドについて詳しくは、
ストリング内のパターンの検索およびサブストリングの置換
を参照してください。
|
|
|