如何使用PHP正则表达式查找内容
我想在一个DIV中查找内容。我只想指定DIV的id;其余部分在如何使用PHP正则表达式查找内容,php,html-parsing,Php,Html Parsing,我想在一个DIV中查找内容。我只想指定DIV的id;其余部分在preg\u match下自动调整。 例如: 一些文本。。。 使用HTML解析器而不是正则表达式来解析HTML,更有可能获得良好的结果。用正则表达式解析HTML非常困难,结果可能不太可靠 检查这个问题的公认答案:关于如何进行的一些建议。布伦顿是对的。无论如何,这里有: <?php function findDivInnerHtml($html, $id){ preg_match("/<div .* id=
preg\u match
下自动调整。
例如:
一些文本。。。
使用HTML解析器而不是正则表达式来解析HTML,更有可能获得良好的结果。用正则表达式解析HTML非常困难,结果可能不太可靠
检查这个问题的公认答案:关于如何进行的一些建议。布伦顿是对的。无论如何,这里有:
<?php
function findDivInnerHtml($html, $id){
preg_match("/<div .* id=\"{$id}\" .*>(.*)<\\/div>/i", $html, $matches);
return $matches[1];
}
?>
示例用法:
<?php
$html = '<div id="other"> xxx </div> <div id="midbuttonarea" etc...>some text...</div> ';
$innerHTML = findDivInnerHtml($html, 'midbuttonarea');
echo $innerHTML; //outputs "some text..."
?>
希望这有帮助。是否有什么东西阻止您使用phps DOM类?在php正则表达式中,这是可能的。忘记告诉您,
$html
不必有换行符。您可以先用str\u replace
轻松删除它们
<?php
$html = '<div id="other"> xxx </div> <div id="midbuttonarea" etc...>some text...</div> ';
$innerHTML = findDivInnerHtml($html, 'midbuttonarea');
echo $innerHTML; //outputs "some text..."
?>