代码拉取完成,页面将自动刷新
/*
* @Name:
* @Descripttion:
* @Warning:
* @version:
* @Author: moo
* @Date: 2021-01-09 14:03:49
* @LastEditors: moo
* @LastEditTime: 2021-05-19 17:51:09
*/
package utils
import (
"html"
"regexp"
"strings"
"unicode/utf8"
)
func StringSub(s string, length int) string {
var size, n int
for i := 0; i < length && n < len(s); i++ {
_, size = utf8.DecodeRuneInString(s[n:])
n += size
}
return s[:n]
}
func StringLen(s string) int {
return utf8.RuneCountInString(s)
}
func TrimHtml(sHtml string) string {
src := html.UnescapeString(sHtml)
//将HTML标签全转换成小写
re, _ := regexp.Compile("\\<[\\S\\s]+?\\>")
src = re.ReplaceAllStringFunc(src, strings.ToLower)
//去除STYLE
re, _ = regexp.Compile("\\<style[\\S\\s]+?\\</style\\>")
src = re.ReplaceAllString(src, "")
//去除SCRIPT
re, _ = regexp.Compile("\\<script[\\S\\s]+?\\</script\\>")
src = re.ReplaceAllString(src, "")
//去除所有尖括号内的HTML代码,并换成换行符
re, _ = regexp.Compile("\\<[\\S\\s]+?\\>")
// src = re.ReplaceAllString(src, "\n")
src = re.ReplaceAllString(src, " ")
//去除连续的换行符
re, _ = regexp.Compile("\\s{2,}")
// src = re.ReplaceAllString(src, "\n")
src = re.ReplaceAllString(src, "")
return strings.TrimSpace(src)
}
func TrimHtmlDesc(sHtml string, iLen int) string {
var iRtnLen int = 0
iTrimLen := StringLen(sHtml)
if iTrimLen > iLen+50 {
iTrimLen = iLen + 50
} else if iTrimLen > iLen {
iTrimLen = iLen
}
stripped := TrimHtml(StringSub(sHtml, iTrimLen))
iRtnLen = StringLen(stripped)
if iRtnLen > iLen {
iRtnLen = iLen
}
return StringSub(stripped, iRtnLen)
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。