我想查找DIV中的內容。我只想指定DIV的ID;其餘部分根據preg_match
自動調整。 例如: -如何使用PHP正則表達式查找內容
<div id="midbuttonarea" etc...>some text...</div>
我想查找DIV中的內容。我只想指定DIV的ID;其餘部分根據preg_match
自動調整。 例如: -如何使用PHP正則表達式查找內容
<div id="midbuttonarea" etc...>some text...</div>
你更可能使用HTML解析器來解析HTML,而不是正則表達式來得到一個好的結果。用正則表達式解析HTML是非常困難的,結果可能不是很可靠。
查看此問題的接受答案:How do you parse and process HTML/XML in PHP?瞭解如何解決此問題的一些建議。
它可以在php的正則表達式中使用。 – rajan 2011-04-29 07:27:56
布倫頓是對的。總之,在這裏你必須:
<?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..."
?>
希望這有助於。
忘了告訴你'$ html'不必有換行符。你可以很容易地用'str_replace'將它們刪除第一個 – 2011-04-29 07:33:59
感謝您的幫助,它的工作正常...感謝很多 – rajan 2011-04-29 07:57:28
太棒了!請將我的答案標記爲最佳解決方案 – 2011-04-29 07:59:54
有什麼東西可以阻止你使用phps DOM類嗎?這會讓事情變得更容易。 – Yoshi 2011-04-29 07:17:54