トップページ > コンテンツ > プログラミング入門 > Ajax入門 > JavaScript入門 > javascript正規表現

正規表現を見つける

javascriptで正規表現との比較を行う際には、以下の2つの方法がある。

1.RegExpオブジェクトを使う方法

RegExp(正規表現)で正規表現を生成し、test関数やexec関数で合致するか調べる。
test関数は合致したか否かをtrue/falseで返し、exec関数は合致した文字を返す。
var exptest = new RegExp('^[0-9]+\\s[0-9]+'); //<-先頭英数字1回以上(^[0-9]+),空白文字(¥s),英数字1回以上のもの
                                              //正規表現の書き方はvar 変数=/正規表現/;のような書き方もOK
var string1 = "034 58";
    if(exptest.test(string1)) {
         alert('正規表現にマッチ');
    } else {
         alert('正規表現にマッチせず');
    }

var exptest = new RegExp('[0-9]+\\s[0-9]+','g'); //<-gはグローバルマッチ。複数にマッチできる。
var string1 = "034 58 99 21";
alert(exptest(string1)); //<-034 58を表示する
alert(exptest(string1)); //<-2回目は99 21を表示する。

2.Stringオブジェクトを使う方法

match関数 正規表現に合致した文字列を返す
search関数 正規表現に合致した位置を返す


正規表現の後方参照

JavascriptではRegExp.$1等の記述で後方参照できる。

正規表現の大文字小文字区別

var exptest = new RegExp(正規表現,"i")のように第2引数にiフラグをセットすると、大文字小文字を区別しなくなる。
正規表現にiフラグがセットされているかはexptest.ignoreCaseで確認できる。

正規表現の書き方については、正規表現の書き方を参照にされたし。

参考:
http://memo.hirosiki.jp/article/27778598.html(後方参照について)
最終更新:2018年09月26日 09:44