有没有人知道任何可以从html文件中删除额外空格(换行符,制表符等)的好的java库(或单个方法)?所以html文件基本上变成了1行。
感谢。
更新:看起来没有库可以做到这一点所以我创建了自己的开源项目来解决这个问题:http://code.google.com/p/htmlcompressor/
答案 0 :(得分:22)
看起来没有库可以做到这一点所以我创建了自己的开源项目来解决这个任务,也许有人会发现它有用:http://code.google.com/p/htmlcompressor/
答案 1 :(得分:4)
就个人而言,我刚刚在服务器中启用了 HTTP压缩,并且让我的HTML可读。
但是对于你想要的东西,你可以使用一个与你指定的匹配的正则表达式使用String.replaceAll()。在我的头顶,像:
small=large.replaceAll("\\s{2,}"," ");
答案 2 :(得分:2)
要小心。 pre和textarea元素内的文本将被损坏。另外,内联脚本元素中的内联javascript必须以列结尾;最后,如果您使用html注释编写内联javascript(以避免一些旧的浏览器错误行为),这将最终注释掉整个内联的JavaScript代码。
你为什么要这样做?如果您想减少html的下载大小,那么您只需要GZIP filter。
答案 3 :(得分:1)
答案 4 :(得分:1)
您需要以下库:
com.googlecode.htmlcompressor/htmlcompressor/1.5.2
com.google.javascript/closure-compiler/r1043
com.yahoo.platform.yui/yuicompressor/2.4.6
版本不是最新的,但它们是兼容的。
闭包用于内联JavaScript,而yui则用于内联CSS。
[1]: https://i.stack.imgur.com/ielVi.jpg
答案 5 :(得分:0)
input.replaceAll("\s+", " ");
会将任何空格转换为单个空格