我试图找到从一个div到另一个div的所有内容,包括介于两者之间的所有内容,即使有换行符,即使中间还有其他标记和php函数。
我希望它在<div="constant-strip">
开始搜索,最后在<?php
包含....
我希望它删除<div="constant-strip">
之后的所有内容,直到它到达<?php
include
即使它们之间还有其他<?php
和<div>
标记。
我到处搜索过,但我发现所有的正则表达式和通配符等搜索结果都是人们想要在div的末尾停止并且不包含其中的div或仅适用于文本等。 ..
所有([^<])
和我已经尝试了([\s\S])+
以及所有这些,但它们都不起作用
基本上我想改变这个:
<div id="constant_strip" class="clearfix">
<div class="clearfix"><a href="<?php echo $division ?>_brands.php">
<img src="images/people.png" width="22" height="21" style="<?php echo $stripColour ?>" />View our suppliers</a></div>
<div id="call">Call us: 021 323 4088</div>
</div>
</div>
<?php include('/footer.php'); ?>
并将其转换为:<?php include('/footer.php'); ?>
问题是它在每个页面上都没有完全相同的信息
答案 0 :(得分:0)
以下正则表达式将匹配中间部分,您要替换:
(?<=<div id="constant_strip" class="clearfix">)[\s\S]*?(?=<\?php include)