JavaScriptのmatchの戻り値
JavaScriptのmatchは正規表現に合致した文字列を配列で返します。
「g」を付けない場合と「g」を付ける場合で内容が変わります。
gを付けない場合 | gを付ける場合 |
---|---|
0個目 合致した部分全体 1個目 1個目の括弧で括られた部分 2個目 2個目の括弧で括られた部分 |
0個目 最初に合致した部分全体 1個目 2番目に合致した部分全体 |
gを付けない場合のサンプル
str="xayxbyxcy";
ret=str.match(/(x.)y/);
ret=str.match(/(x.)y/);
ret[0]="xay"
ret[1]="xa"
「x□y」という文字列を探しています。
gがないので一つ見つけたら終わりです。
戻り値の0個目は合致した部分全体です。「xay」になります。
戻り値の1個目は合致した部分のうち括弧に挟まれた部分です。「(xa)y」と見て「xa」になります。
gを付ける場合のサンプル
str="xayxbyxcy";
ret=str.match(/(x.)y/g);
ret=str.match(/(x.)y/g);
ret[0]="xay"
ret[1]="xby"
ret[2]="xcy"
上のサンプルと同じく「x□y」という文字列を探しています。
gがあるので合致する文字列をすべて見付けます。
戻り値の0個目は最初に合致した文字列です。
戻り値の1個目は2番目に合致した文字列です。
戻り値の2個目は3番目に合致した文字列です。
括弧に挟まれた部分を返すようなことはありません。
[ 2011年5月23日 | カテゴリー: JavaScript | タグ: JavaScript , tips ]
« 9を9個並べた数を2乗すると | 「同じ文字が2個並んだ文字列」の正規表現 »
コメントを残す