ホームページ > バックエンド開発 > Golang > Goでルーンを文字列に変換するには?

Goでルーンを文字列に変換するには?

Linda Hamilton
リリース: 2024-11-19 21:42:02
オリジナル
742 人が閲覧しました

How to Convert a Rune to a String in Go?

Golang でルーンを文字列に変換する

ルーンを文字列に変換するには、strconv.QuoteRune() 関数を使用できます。ただし、コードでは、scanner.Scan() を使用してルーンを読み取りますが、これは正しくありません。

scanner.Scan() 関数は、Scanner.Mode によって制御されるトークンまたは特別なトークンのルーンを読み取ります。ビットマスク。ルーン自体は返されませんが、text/scanner パッケージからの特別な定数が返されます。

単一のルーンを読み取るには、代わりに Scanner.Next() を使用します。修正されたコードは次のとおりです:

package main

import (
    "fmt"
    "strconv"
    "strings"
    "text/scanner"
)

func main() {
    var b scanner.Scanner
    const a = `a`
    b.Init(strings.NewReader(a))
    c := b.Next()
    fmt.Println(strconv.QuoteRune(c))
}
ログイン後にコピー

出力:

'a'
ログイン後にコピー

または、ルーンは int32 のエイリアスであるため、型変換を使用してルーンを文字列に直接変換することもできます:

r := rune('a')
fmt.Println(string(r))
ログイン後にコピー

出力:

a
ログイン後にコピー

さらに便利にするために、for ... range 構造を使用して文字列のルーンを反復できます:

for _, r := range "abc" {
    fmt.Println(string(r))
}
ログイン後にコピー

出力:

a
b
c
ログイン後にコピー

[]rune() を使用して文字列をルーンのスライスに変換することもできます:

runes := []rune("abc")
fmt.Println(runes) // Output: [97 98 99]
ログイン後にコピー

最後に、utf8.DecodeRuneInString() を使用して、文字列からのルーン。

以上がGoでルーンを文字列に変換するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート