Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP回溯以匹配html标记_Php_Regex - Fatal编程技术网

使用PHP回溯以匹配html标记

使用PHP回溯以匹配html标记,php,regex,Php,Regex,我试图弄清楚如何在PHP中使用正则表达式来回溯并在特定html前面找到一个标记 下面是我想要查看的完整HTML,包括我想要查找并最终从字符串中删除的结束标记: </div> <div class="dHeading">Grades 分数 实际上,它在两个标记之间有一条新行和空格。因此,我希望以标记为目标,并将其从字符串中删除。任何帮助都将不胜感激 我正在使用一个在线正则表达式测试器。这是我现在拥有的 正则表达式: /(</div>)([\

我试图弄清楚如何在PHP中使用正则表达式来回溯并在特定html前面找到一个
标记

下面是我想要查看的完整HTML,包括我想要查找并最终从字符串中删除的结束标记:

</div>
        <div class="dHeading">Grades

分数
实际上,它在两个标记之间有一条新行和空格。因此,我希望以
标记为目标,并将其从字符串中删除。任何帮助都将不胜感激

我正在使用一个在线正则表达式测试器。这是我现在拥有的

正则表达式:

/(</div>)([\w\W]*?)(<div)/

/()([\w\w]*?)(我怀疑这个问题是否与解析HTML文档有关,而regex完全可以处理它:

preg_replace('~</div>\s+(?=<div)~', '', $content);

preg_replace('~\s+(?=我怀疑这个问题是否与解析HTML文档有关,而regex完全可以处理它:

preg_replace('~</div>\s+(?=<div)~', '', $content);

preg\u replace('~\s+(?=
regex
不能用于解析HTML。为什么?想知道…你尝试过什么吗?抱歉,是的,现在添加了。将其更改为
/\s+(?=
regex
不能用于解析HTML。为什么?想知道…你尝试过什么吗?抱歉,是的,现在添加了。将其更改为
/\s+(?=这看起来很有希望,但似乎不起作用:
dHeading
中的
h
在您的正则表达式中不是大写。检查此项这看起来很有希望,但似乎不起作用:
dHeading中的
h
在您的正则表达式中不是大写。检查此项