Maison >développement back-end >Golang >Comment convertir une rune en chaîne en Go ?

Comment convertir une rune en chaîne en Go ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-19 21:42:02729parcourir

How to Convert a Rune to a String in Go?

Conversion d'une rune en chaîne dans Golang

Pour convertir une rune en chaîne, vous pouvez utiliser la fonction strconv.QuoteRune(). Cependant, dans votre code, vous utilisez scanner.Scan() pour lire une rune, ce qui est incorrect.

La fonction scanner.Scan() lit les jetons ou les runes de jetons spéciaux contrôlés par Scanner.Mode masque de bits. Il ne renvoie pas la rune elle-même mais des constantes spéciales du package texte/scanner.

Pour lire une seule rune, utilisez plutôt Scanner.Next(). Voici le code corrigé :

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))
}

Sortie :

'a'

Alternativement, vous pouvez convertir directement une rune en chaîne en utilisant la conversion de type, car la rune est un alias pour int32 :

r := rune('a')
fmt.Println(string(r))

Sortie :

a

Pour plus de commodité, vous pouvez parcourir les runes d'une chaîne en utilisant la construction for ... range :

for _, r := range "abc" {
    fmt.Println(string(r))
}

Sortie :

a
b
c

Vous pouvez également convertir une chaîne en une tranche de runes en utilisant [] rune():

runes := []rune("abc")
fmt.Println(runes) // Output: [97 98 99]

Enfin, vous pouvez utiliser utf8.DecodeRuneInString() pour extraire une rune d'un chaîne.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn