RegExp オブジェクト

更新 : 2007 年 11 月

正規表現パターン一致の結果についての情報を保存する組み込みのグローバルなオブジェクトです。このオブジェクトを明示的に構築することはできません。

プロパティ

RegExp オブジェクトのプロパティ

メソッド

RegExp オブジェクトには、メソッドはありません。

必要条件

Version 3

解説

RegExp オブジェクトは、直接作成することはできませんが、いつでも使用できます。次の表は、正規表現の検索が成功するまでの、RegExp オブジェクトのさまざまなプロパティの初期値を示したものです。

プロパティ

略式

初期値

index

 

-1

input

$_

空の文字列

lastIndex

 

-1

lastMatch

$&

空の文字列

lastParen

$+

空の文字列

leftContext

$`

空の文字列

rightContext

$'

空の文字列

$1 - $9

 

空の文字列

グローバルな RegExp オブジェクトを Regular Expression オブジェクトと混同しないようにしてください。名前は似ていますが、これらの 2 つのオブジェクトには明確な違いがあります。グローバルな RegExp オブジェクトのプロパティには、一致が検出されるたびに更新される情報が格納されるのに対し、Regular Expression オブジェクトのプロパティには、Regular Expression の 1 つのインスタンスによる一致に関する情報だけが格納されます。

40a0cc3e.alert_note(ja-jp,VS.90).gifメモ :

RegExp のプロパティは、高速モードで実行されている場合は利用できません。JScript の既定のモードは高速モードです。これらのプロパティを使用するプログラムをコマンド ラインからコンパイルするには、/fast- を使用して fast オプションをオフにする必要があります。ASP.NET で fast オプションをオフにするのは安全ではありません。スレッドに関する問題が発生する場合があります。

次のコードは、グローバルな RegExp オブジェクトの使用例です。この例は、/fast- オプションを使用してコンパイルする必要があります。

使用例

var re : RegExp = new RegExp("d(b+)(d)","ig");
var arr : Array = re.exec("cdbBdbsbdbdz");
print("$1 contains: " + RegExp.$1);
print("$2 contains: " + RegExp.$2);
print("$3 contains: " + RegExp.$3);

このコードの出力は次のようになります。

$1 contains: bB
$2 contains: d
$3 contains:

参照

概念

正規表現の構文

参照

Regular Expression オブジェクト

String オブジェクト

/fast