我要用preg_replace和str_replace从xml文件中删除几行代码
preg_replace('/(<!DOCTYPE(.*?)<fields )/s', '<fields ', $readSettings);
在替换完成后,我留下了空白的行。http://prntscr.com/3hegmb第4和第5行有没有办法重新格式化文件一旦我完成或删除行和它的空间完全?
不是100%确定你在问什么。你能张贴一个HTML的例子后,你得到RegEx?
这将删除多余的空白。
preg_replace( '~s{2,}~', '', $str );
你也可以看看PHP DOM (PHP Manual)。加载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();