この回答を書いている間、s-flag(dotall-ドットは改行に一致します)を使用する代わりに、改行のみに一致する必要がありました。
正規表現のテストに通常使用されるサイトは、\nまたはに一致させようとすると、動作が異なり\r\nます。
私は気づきました
Regex101は改行のみに一致します
\n
(例 -削除\rして一致)RegExrはオン とオンのどちら
\nでも改行に一致\r\n
せず、m-flagと\s
(例)を除いて、改行に一致するものを見つけることができませんDebuggexの動作はさらに異なります
。この例では\r\n、にのみ一致しますが、
ここで\nは、同じフラグとエンジンが指定されているにのみ一致します
私はm-flag(複数行-行^の先頭と$末尾を一致させる)を完全に認識していますが、これがオプションにならない場合があります。\sタブやスペースにも一致するため、と同じです。
Unicodeの改行文字(\u0085)を使用するという私の考えはうまくいかなかったので、
- 改行の一致を(できれば使用言語に関係なく)正規表現に統合するフェイルセーフな方法はありますか?
- 上記のサイトの動作が異なるのはなぜですか(特にDebuggex、1回だけ
\nと1 回だけ一致\r\n)。
\r?\n両方を一致させるため。古いMac構文では機能しませんが、最近では珍しい構文です。\r\n\n\r
[\r\n]+-または、このような何か