Maison >développement back-end >Golang >Comment parcourir les chaînes par runes dans Go ?

Comment parcourir les chaînes par runes dans Go ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-27 15:34:111100parcourir

How Do I Iterate Over Strings by Runes in Go?

Itération sur des chaînes par runes dans Go

Dans Go, lorsque vous tentez de parcourir une chaîne à l'aide d'index, vous pouvez rencontrer un problème où str[i] renvoie un octet au lieu d'une rune. En effet, les chaînes dans Go sont des séquences d'octets, pas des runes.

Pour parcourir les chaînes par runes, utilisez le mot-clé range. Par exemple :

for pos, char := range "日本語" {
    fmt.Printf("character %c starts at byte position %d\n", char, pos)
}

Cela affichera :

character 日 starts at byte position 0
character 本 starts at byte position 3
character 語 starts at byte position 6

La syntaxe de plage fait ce qui suit :

  • Itère de 0 à la longueur de la chaîne
  • Pour chaque position, extrait la rune à cette position en utilisant l'encodage UTF-8

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