好的,我们说我有这个字符串:
<div class='box'>i like the world</div><div class='box'>i like my computer</div>
我如何回应包含单词&#34; world&#34;?的div? 这会包含某种正则表达式吗?
提前非常感谢你。
答案 0 :(得分:6)
使用DOMDocument和DOMXPath,您可以轻松完成此操作:
<?php
$html = "<div class='box'>i like the world</div><div class='box'>i like my computer</div>";
$doc = new DOMDOcument();
$doc->loadHTML($html);
$xPath = new DOMXPath($doc);
$nodes = $xPath->query("//div[contains(text(),'world')]");
现在$nodes
包含所有包含单词div
的{{1}}元素。
演示:http://codepad.viper-7.com/Dhalvh
请注意,您不希望尝试使用正则表达式解析HTML,因为这是时间问题而不是it is going to break。
答案 1 :(得分:1)
<?php
$html[0] = "<div class='box'>i like the world</div>";
$html[1] = "<div class='box'>i like my computer</div>";
foreach ($html as $div) {
if (preg_match("/world/i", $div)) {
echo($div);
}
}
?>
是的,我猜是正则表达式是一种方便的方法。