Go で Unicode コード ポイントを文字に変換する
テキスト ファイルを操作する場合、文字が Unicode コード ポイントとしてエンコードされる状況が発生することがあります。 。これらの文字をリテラル形式で表示するには、コード ポイントを文字に変換する必要があります。
この特定の例では、Unicode コード ポイントを含むテキスト ファイルがあります:
\u0053 \u0075 \u006E
これらのコード ポイントを対応する文字に変換したいとします:
S u n
この変換を実現するには、strconv.Unquote() を利用できます。
strconv.Unquote() の使用
文字列が引用符で囲まれている場合は、strconv.Unquote() を使用できます。ただし、コード ポイントに引用符を自分で追加する必要があります。
lines := []string{ `\u0053`, `\u0075`, `\u006E`, } for i, v := range lines { var err error lines[i], err = strconv.Unquote(`"` + v + `"`) if err != nil { fmt.Println(err) } }
Using strconv.UnquoteChar()
文字列が単一のルーンを表す場合、 strconv.UnquoteChar() の方が適しています。引用符は必要ありません:
runes := []string{ `\u0053`, `\u0075`, `\u006E`, } for _, v := range runes { var err error value, _, _, err := strconv.UnquoteChar(v, 0) if err != nil { fmt.Println(err) } fmt.Printf("%c\n", value) }
コード ポイントを変換すると、次の出力が得られます:
S u n
以上がGo で Unicode コードポイントを文字に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。