我需要解析一些字符串并通过将任何特殊字符解析为 'â' TO â 来清理它们。这是十进制编码。我知道如何使用this将其解析为 Unicode ,但我需要十进制代码。整个想法是替换那些特殊字符,如果它们包含特殊字符,则用转换返回整个字符串。例如:text := "chitâra"text := parseNCRs(text) //can be by referenceparseNCRs(&text) //or passing the pointerfmt.Println(text) //Outputs: "chitâra"
1 回答
qq_遁去的一_1
TA贡献1725条经验 获得超7个赞
遍历字符串以获取符文的数值。
func escape(s string) string {
var buf bytes.Buffer
for _, r := range s {
if r > 127 {
fmt.Fprintf(&buf, "&#%d;", r)
} else {
buf.WriteRune(r)
}
}
return buf.String()
}
playground
如果您要转义 HTML 或 XML,那么您还应该处理其他特殊字符:
func escape(s string) string {
var buf bytes.Buffer
for _, r := range s {
if r > 127 || r == '<' || r == '>' || r == '&' || r == '"' || r = '\'' {
fmt.Fprintf(&buf, "&#%d;", r)
} else {
buf.WriteRune(r)
}
}
return buf.String()
}
- 1 回答
- 0 关注
- 167 浏览
添加回答
举报
0/150
提交
取消