ストリングに対して正規表現を使用するメソッド

RegExp クラスには、exec() および test() の 2 つのメソッドが含まれます。

RegExp クラスの exec() メソッドおよび test() メソッドに加えて、String クラスにはストリング内で正規表現に一致する match()replace()search()、および splice() の各メソッドが含まれます。

サブトピック

test() メソッド
exec() メソッド
RegExp パラメータを使用する String のメソッド

test() メソッド

RegExp クラスの test() メソッドは、次の例で示すように、指定したストリング内に正規表現に一致する部分があるかどうかを単に判定します。

var pattern:RegExp = /Class-\w/;
var str = "Class-A";
trace(pattern.test(str)); // 出力 : true

exec() メソッド

RegExp クラスの exec() メソッドは、指定したストリング内に正規表現に一致する部分があるかどうかを調べ、次の内容を格納した配列を返します。

また、この配列には、サブストリングの一致を開始したインデックス位置を示す index プロパティがあります。

たとえば、次のようなコードがあるとします。

var pattern:RegExp = /\d{3}\-\d{3}-\d{4}/; //米国の電話番号
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);
}
// 出力 : 
// 0      3      She
// 10      19      seashells
// 27      35      seashore

RegExp パラメータを使用する String のメソッド

正規表現のパラメータを指定できる String クラスのメソッドとしては、match()replace() search()、および split() があります。これらのメソッドの詳細については、ストリング内のパターンの検索とサブストリングの置換を参照してください。


 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00000120.html