次の方法で共有


multiline プロパティ

正規表現で使用する multiline フラグ (m) の状態を表すブール値を返します。

rgExp.multiline

引数

  • rgExp
    必ず指定します。 Regular Expression オブジェクトのインスタンスを指定します。

解説

multiline プロパティは読み取り専用で、正規表現の複数行フラグが設定されているときは true を返し、設定されていないときは false を返します。 m フラグを使用した正規表現オブジェクトを作成すると、multiline プロパティが true になります。 既定値は false です。

multilinefalse のとき、"^" で文字列の先頭位置に一致し、"$" で文字列の最終位置に一致します。 multilinetrue の場合は、"^" で "\n" または "\r" の直後を含む文字列の先頭位置に一致し、"$" で "\n" または "\r" の直前を含む文字列の最終位置に一致します。

使用例

multiline プロパティの動作の例を次に示します。 以下の関数に m を渡した場合、"while" という単語が "and" に置換されます。 これは、multiline フラグが設定されていて、改行文字の後の行頭に "while" があるためです。 multiline フラグを設定すると、複数行文字列に対して検索を実行できます。

function RegExpMultilineDemo(flag){
    // The flag parameter is a string that contains
    // g, i, or m. The flags can be combined.

    // Check flags for validity.
    if (flag.match(/[^gim]/))
       {
       return ("Flag specified is not valid");
       }

    // Create the string on which to perform the replacement.
    var ss = "The man hit the ball with the bat ";
    ss += "\nwhile the fielder caught the ball with the glove.";

    // Replace "while" with "and".
    var re = new RegExp("^while", flag);
    var r = ss.replace(re, "and");

    // Output the multiline flag and the resulting string.
    var s = "";
    s += "Result for multiline = " + re.multiline.toString();
    s += ": " + r;

    return(s);
}

print (RegExpMultilineDemo("m"));
print (RegExpMultilineDemo(""));

必要条件

Version 5.5

対象:

Regular Expression オブジェクト

参照

参照

global プロパティ

ignoreCase プロパティ

概念

正規表現の構文