こんなかんじでどうでしょうか。
preg_match_all('/^(header|message|footer)(.*?)$/m', $msg, $n) ;
http://www.php.net/manual/ja/reference.pcre.pattern.modifiers.ph...
早速のご回答本当にありがとうございます。
しかし、今回のケースだとパターン修飾子mが利かないというか、たとえば以下のプログラムでは
残念ながら、改行までの文字列しか取れていませんでした。
$msg="header:xxxxx
message:aaaa
bbb
cc
footer:000
111";
preg_match_all('/^(header|message|footer)(.*?)$/m', $msg, $n) ;
print_r($n);
期待値は、":xxxxx"と":aaaa\n\rbbb\n\rcc"と":000\n\r111"が取得できることです。
▽2
●
GoldenDawn ●50ポイント ![]() |
すいません。質問を少し勘違いしていました。
これではどうでしょう。
preg_match_all('/(header|message|footer)(:[^:]*([\n\r]|$))/', $msg, $n) ;
ご回答ありがとうございます。
いろいろなパターンで試したところ、期待通りの動作ができました。
実は結構ハマっていましたので、すごく助かりました。
ありがとうございました。