【发布时间】:2009-09-16 10:55:42
【问题描述】:
我有很多包含不需要的换行符的 HTML 文件。这些破坏了页面内的内联javascript和格式等内容。我想想出一种方法来去除页面中没有直接出现在 html 标记之后的所有换行符,例如 </div>。有谁知道可能能够实现这一目标的正则表达式和/或程序?
【问题讨论】:
我有很多包含不需要的换行符的 HTML 文件。这些破坏了页面内的内联javascript和格式等内容。我想想出一种方法来去除页面中没有直接出现在 html 标记之后的所有换行符,例如 </div>。有谁知道可能能够实现这一目标的正则表达式和/或程序?
【问题讨论】:
【讨论】:
您可以使用否定的lookbehind来匹配换行符
<?php
$buffer = file_get_contents('test.html');
// replace all line feeds not preceded by </div>
$buffer = preg_replace('|(?<!</div>)[\r\n]|', "", $buffer);
file_put_contents('test.new.html', $buffer);
?>
【讨论】: