RegexOptions.Singlelineを指定すると、正規表現エンジンは単一行モードで動作するようになります。 単一行モードでは、任意の一文字を表す正規表現要素.
が\n
にもマッチするようになります。 言い換えると、単一行モードでは改行を含む文字列でも、それを改行とみなさず他の文字と同等に処理します。
次の例では、正規表現を用いてfox
から始まりdog
で終わる部分の文字列を抽出しています。 同じ正規表現を用いていても、RegexOptions.Singlelineを指定した場合とそうでない場合で結果が異なっている点に注目してください。
.
は、None, Singleline, Multilineのいずれを指定した場合でも常に\r
にマッチします。
RegexOptions.Singlelineを指定した場合に動作が変わる正規表現要素とその動作の違いについては、.NET Frameworkで使用できる正規表現 §.RegexOptions.Singlelineと"."の動作の違いも参照してください。