我使用preg_replace和str_replace
从xml文件中删除了几个代码行preg_replace('/(<!DOCTYPE(.*?)<fields )/s', '<fields ', $readSettings);
替换完成后,我留下了一个空格所在的行。 http://prntscr.com/3hegmb第4和第5行 有没有办法在完成后重新格式化文件或完全删除行及其空间?
答案 0 :(得分:1)
不是100%肯定你在问什么。您可以发布RegEx后获得的HTML示例吗?
这将消除多余的空白区域。
preg_replace( '~\s{2,}~', '', $str );
您还可以查看PHP DOM(PHP手册)。将HTML加载到其中,然后将preserveWhiteSpace和formatOutput设置为false。
<强>加成强>:
preg_replace( '~\s+\n+\s+\n+~', "\n", $str );
我想会这样做。但正如前面提到的,你可以用PHP DOM做到这一点,它会更灵活。
$doc = new DOMDocument();
$doc->loadHTML( $html );
$doc->preserveWhiteSpace = true; // Or false?
$doc->formatOutput = true;
echo $doc->saveHTML();