我有一个包含多个注释掉的PHP数组的html文档,例如:
<!-- Array
(
[key] => 0
)
-->
使用PHP,我需要以某种方式解析HTML仅用于这些注释(还有其他需要忽略的注释)并提取内容。我一直在尝试使用preg_match_all
,但我的正则表达能力并不高。有人能指出我正确的方向吗?
非常感谢任何帮助!
答案 0 :(得分:2)
如何使用允许您访问评论的HTML Parser(例如Simple HTML DOM),然后使用strpos检查新评论的每条评论。
$html = str_get_html('...HTML HERE...');
$comments = $html->find('comment');
foreach ( $comments as $comment ){
if ( strpos($comment, "\n") !== false ){
//process comment
}
}
答案 1 :(得分:2)
这里有三个事实
<!--
”而不表示评论(其他任何地方都会将其转义为“&!--
“)上述组合意味着(lo和behold)正则表达式可以用于识别HTML注释。
试试这个正则表达式:<!-- Array([\s\S])*?-->
。匹配组1将包含"Array"
之后的所有内容,直至注释的结束序列。
您可以对找到的位进行进一步的健全性检查,以确保它们实际上是您正在寻找的。 p>
答案 2 :(得分:-2)