1

私はすべてのコンテンツを一致させようとしています<!-- and -->

私のphpコード:

<?php
$html = <<< HTML
<!-- content
content content
content -->
<!-- dd  dsd  sdsd  s -->
<!-- dsajda2i -->
HTML;
preg_match_all('#<!-- (.*) -->#si',$html,$out,PREG_SET_ORDER);
print_r($out);
?>

しかし、それは適切に一致していません。

OBS:内に任意の文字を含めることができます<!-- here any characters -->

誰かが私を助けてくれますか?

4

1 に答える 1

2

(.*?)だけでなく、を使用する必要があります(.*)。正規表現エンジンのデフォルトの「貪欲な」動作は、そうでなければ予期しない結果をもたらします。

于 2012-08-26T22:57:08.910 に答える