これを設定しない場合は、改行にはマッチしません」とあります。「/^(.+)$/m」のように書けば、複数行テキストを配列に取ることができるはずなのですが、実際やってみると改行を含むテキストが返ってきます。掛けたりしていましたが、せっかくなので調べてみました。改行の意味するもの改行の種類として「LF」「CR+LF」「CR」の3種類があると思いますが、実際にテストコードを書いてみたところ、ドットメタ文字は「CR」にマッチし「LF」にマッチしませんでした。マニュアルには単に「改行」と書かれているので、これらのすべてに対応しているものと思い込んでおりましたが、違うようです。従って、上の例で改行に見えていたのは「CR+LF」の「CR」が残っていたものと思われます。原因が分かれば話は簡単で、文字クラスの否定を使って「CR」及び「LF」を指定すれば良いだけです。$match);まとめマニュアルなどで単に「改行」と言った場合は「LF」のみを指すと思って良さそうです。系では「LF」なのだから当然と言えば当然でした。毎回悩むのもアレなので、改行テキストを綺麗な配列に取る関数を自作しておくと楽かも知れません。改行コードが「CR+LF」で規定されている点です。されたデータは「CR+LF」になっており、取り扱う際に注意しなければなりません。出力する際の改行コードを「LF」のみとしてしまうのは、本来間違いということになります(今まで結構やってたなあ)。「CR+LF」と覚えておくといいかも知れません。