2012年10月28日日曜日

[JavaScript]正規表現のプロパティ

JavaScriptで正規表現のプロパティから取得できる値のまとめ。

サンプルコート

    var p = /([a-z]+)([0-9]+)/i;

    // 現在の正規表現
    document.writeln('source = ' + p.source);
    // 文字列全体に対してマッチングするか
    document.writeln('global = ' + p.global);
    // 大文字小文字の区別
    document.writeln('ignoreCase = ' + p.ignoreCase);
    // 改行を行末と判断するか
    document.writeln('multiline = ' + p.multiline);

    // 静的なプロパティ
    var ret = 'abc123'.match(p);
    // 入力した値(abc123となる)
    document.writeln('RegExp.input = ' + RegExp.input);
    // グループ化した値の参照($ + グループ化の位置をしめす数字を指定する。)
    document.writeln('RegExp.$1 = ' + RegExp.$1);
    document.writeln('RegExp.$2 = ' + RegExp.$2);

結果

source = ([a-z]+)([0-9]+)
global = false
ignoreCase = true
multiline = false
RegExp.input = abc123
RegExp.$1 = abc
RegExp.$2 = 123