如何创建html minifier?
package main
import (
"fmt"
)
func HtmlMinify(html string) string {
// todo: minify html
return html
}
func main() {
htmlExample := `<li>
<a>Hello</a>
</li>`
minifiedHtml := HtmlMinify(htmlExample)
fmt.Println(minifiedHtml) // `<li><a>Hello</a></li>` is wanted
}
Run Code Online (Sandbox Code Playgroud)
输出:
<li>
<a>Hello</a>
</li>
Run Code Online (Sandbox Code Playgroud)
但我希望它是
<li><a>Hello</a></li>
Run Code Online (Sandbox Code Playgroud)
Von*_*onC 10
您的示例可能只涉及删除空格,但缩小html比这更复杂(例如,您不希望删除实际上重要的空格,例如在字符串中).
您可以在以下位置查看示例:
我用过tdewolff/minify:
package main
import (
"bytes"
"fmt"
"github.com/tdewolff/minify"
)
func HtmlMinify(html string) string {
m := minify.NewMinifierDefault()
b := &bytes.Buffer{}
if err := m.HTML(b, bytes.NewBufferString(html)); err != nil {
panic(err)
}
return b.String()
}
func main() {
htmlExample := `<li>
<a>Hello</a>
</li>`
minifiedHtml := HtmlMinify(htmlExample)
fmt.Println(minifiedHtml) // <li><a>Hello</a>
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3874 次 |
最近记录: |