我想在使用php加载时压缩js文件并转换为单行。当我使用'preg_replace'删除空格时发生错误,';'在第234行丢失。 原因是一些行不以';'结尾。例如
var flag='value' // here not ended with ';'
var test='value';
当我缩小时,它看起来像
var flag='value' var test='value';
发生错误。
如何使用一些不以';'
结尾的行来缩小js文件答案 0 :(得分:1)
您可能希望使用基于rules for automatic semi colon insertion的真正解析器。
否则,如果你这样做(即使用正则表达式)......
$str = preg_replace('/(?<!;)\s*(\n|\z)/', ";$1", $str);
...你将咀嚼有效的JavaScript,例如
var a = 'a',
b = 'bob';
...将成为......
var a = 'a',;
b = 'bob';