Hellihello
in meinem Tests habe ich folgendes gefunden:
$subject = "<body>abcde
<div>
</div>
ccfa
sdasdfdef
</body>";
$pattern = '°<body>.*</body>°s';
preg_match_all($pattern, $subject, $matches);
print_r($matches);
bringt:
Array
(
[0] => Array
(
[0] => <body>abcde
<div>
</div>
ccfa
sdasdfdef
</body>
)
)
Ich stelle fest, dass das "s" hinter dem eigentlichen Ausdruck bewirkt, dass im ".*" auch alle whitespaces (Absätze, vermutlich \n und \r sowie Leerzeichen) mitgenommen werden. Ich finde aber keine Doku für diese Syntax.
Dann noch gleich die Frage, warum die Ausgabe ein verschachteltes Array ist?
$matches[0][0] ist ja der Bodyinhalt.
Dank und Gruß,