mirror of
https://github.com/astaxie/beego.git
synced 2024-11-10 20:30:54 +00:00
commit
b54fc10206
29
template.go
29
template.go
@ -10,6 +10,7 @@ import (
|
|||||||
"os"
|
"os"
|
||||||
"path"
|
"path"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
|
"regexp"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
@ -30,6 +31,7 @@ func init() {
|
|||||||
beegoTplFuncMap["date"] = Date
|
beegoTplFuncMap["date"] = Date
|
||||||
beegoTplFuncMap["compare"] = Compare
|
beegoTplFuncMap["compare"] = Compare
|
||||||
beegoTplFuncMap["substr"] = Substr
|
beegoTplFuncMap["substr"] = Substr
|
||||||
|
beegoTplFuncMap["html2str"] = Html2str
|
||||||
}
|
}
|
||||||
|
|
||||||
// MarkDown parses a string in MarkDown format and returns HTML. Used by the template parser as "markdown"
|
// MarkDown parses a string in MarkDown format and returns HTML. Used by the template parser as "markdown"
|
||||||
@ -54,6 +56,33 @@ func Substr(s string, start, length int) string {
|
|||||||
return string(bt[start:end])
|
return string(bt[start:end])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Html2str() returns escaping text convert from html
|
||||||
|
func Html2str(html string) string {
|
||||||
|
src := string(html)
|
||||||
|
|
||||||
|
//将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")
|
||||||
|
|
||||||
|
//去除连续的换行符
|
||||||
|
re, _ = regexp.Compile("\\s{2,}")
|
||||||
|
src = re.ReplaceAllString(src, "\n")
|
||||||
|
|
||||||
|
return strings.TrimSpace(src)
|
||||||
|
}
|
||||||
|
|
||||||
// DateFormat takes a time and a layout string and returns a string with the formatted date. Used by the template parser as "dateformat"
|
// DateFormat takes a time and a layout string and returns a string with the formatted date. Used by the template parser as "dateformat"
|
||||||
func DateFormat(t time.Time, layout string) (datestring string) {
|
func DateFormat(t time.Time, layout string) (datestring string) {
|
||||||
datestring = t.Format(layout)
|
datestring = t.Format(layout)
|
||||||
|
Loading…
Reference in New Issue
Block a user