本文介绍了PHP中的正则表达式问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
<div class="begin">...</div>
如何在PHP中匹配html内部(包括)<div class="begin">
?
How to match the html inside(including) <div class="begin">
in PHP?
我需要一个 regex 解决方案可以处理嵌套大小写的情况.
推荐答案
使用DOM和DOMXPath代替正则表达式,对此我将表示感谢:
Use DOM and DOMXPath instead of regex, you'll thank me for it:
// something useful:
function dumpDomNode ($node) {
$temp = new DOMDocument();
$temp->appendChild($node,true);
return $temp->saveHTML();
}
$dom = new DOMDocument();
$dom->loadHTML($html_string);
$xpath-> new DOMXpath($dom);
$elements = $xpath->query("*/div/[@class='begin']");
foreach ($elements as $el) {
echo dumpDomNode($el); // <-- or do something more useful with it
}
使用正则表达式尝试此操作将带您走入精神错乱的道路...
Trying this with regex will lead you down the path to insanity...
这篇关于PHP中的正则表达式问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!