我需要解析一些字符串并通過將任何特殊字符解析為 'a' TO a 來清理它們。這是十進制編碼。我知道如何使用this將其解析為 Unicode ,但我需要十進制代碼。整個想法是替換那些特殊字符,如果它們包含特殊字符,則用轉換返回整個字符串。例如:text := "chitara"text := parseNCRs(text) //can be by referenceparseNCRs(&text) //or passing the pointerfmt.Println(text) //Outputs: "chitâra"
1 回答

qq_遁去的一_1
TA貢獻1725條經驗 獲得超8個贊
遍歷字符串以獲取符文的數值。
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 關注
- 185 瀏覽
添加回答
舉報
0/150
提交
取消