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

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

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-19 21:42:02723ブラウズ

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 までご連絡ください。