首頁 > 後端開發 > Golang > 如何從 Go 中的字串中刪除無效的 UTF-8 字元?

如何從 Go 中的字串中刪除無效的 UTF-8 字元?

Patricia Arquette
發布: 2024-12-16 21:02:11
原創
522 人瀏覽過

How to Remove Invalid UTF-8 Characters from Strings in Go?

從Go 中的字串中刪除無效的UTF-8 字元

當嘗試使用json.Marshal 封送字串清單時,可以遇到錯誤,指示存在無效的UTF-8 字元。本文解決了這個問題,並提供了在 Go 中刪除或替換此類字元的解決方案。

在 Python 中,unicode 模組提供了 unicode.replace 和 unicode.strict 等方法來處理無效字元。然而,Go 沒有直接的等價物。相反,它依賴於不同的方法:

在Go 1.13 中使用strings.ToValidUTF8

要從字串中刪除無效的UTF-8 字符,您可以使用字串.ToValidUTF8 函數在Go 1.13 中引入。它需要兩個參數:輸入字串和用於無效位元組的替換字元。如果替換字元是空字串,無效位元組會被默默刪除:

Using strings.Map and utf8.RuneError in Go 1.11

另一種選擇解決方案是使用strings.Map 和utf8.RuneError 。 strings.Map 將函數套用到字串中的每個符文,而 utf8.RuneError 表示無效的 UTF-8 字元。這是一個範例:

以上是如何從 Go 中的字串中刪除無效的 UTF-8 字元?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板