Maison > développement back-end > Golang > le corps du texte

Comment trouver la longueur d'une chaîne en langage Go

藏色散人
Libérer: 2023-01-11 09:23:11
original
5834 Les gens l'ont consulté

Comment trouver la longueur d'une chaîne en langage Go : 1. Utilisez la fonction "len()" pour calculer la longueur de la chaîne ASCII ; 2. Utilisez la fonction "utf8.RuneCountInString()" pour calculer la chaîne Unicode ; longueur.

Comment trouver la longueur d'une chaîne en langage Go

L'environnement d'exploitation de cet article : système Windows 7, Go version 1.11.2, ordinateur Dell G3.

Tutoriel recommandé : "go langage "

Le langage Go calcule la longueur de la chaîne - len() et RuneCountInString()

La fonction intégrée len() du langage Go peut être utilisée pour obtenir la longueur des tranches, des chaînes, des canaux, etc. Le code suivant peut utiliser len() pour obtenir la longueur d'une chaîne.

tip1 := "genji is a ninja"
fmt.Println(len(tip1))
tip2 := "忍者"
fmt.Println(len(tip2))
Copier après la connexion

Le résultat du programme est le suivant :

16
6
Copier après la connexion

len() Le type de valeur de retour de la fonction len() est int, qui représente le nombre de caractères ASCII ou la longueur en octets de la chaîne. .

Le 16 dans la première ligne de la sortie indique que le nombre de caractères dans tip1 est de 16.

Le 6 dans la deuxième ligne de la sortie indique le format de caractères de tip2, c'est-à-dire que le nombre de caractères pour "ninja" est 6. Cependant, selon la coutume, le nombre de caractères pour "ninja" devrait être 2.

La différence ici est que les chaînes du langage Go sont toutes enregistrées au format UTF-8, et chaque caractère chinois occupe 3 octets, utilisez donc len() pour obtenir les 6 octets correspondant aux deux caractères chinois.

Si vous souhaitez calculer en fonction du nombre habituel de caractères, vous devez utiliser la fonction RuneCountInString() fournie par le package UTF-8 dans le langage Go pour compter le nombre de caractères Uncode.

Le code suivant montre comment calculer le nombre de caractères UTF-8.

fmt.Println(utf8.RuneCountInString("忍者"))
fmt.Println(utf8.RuneCountInString("龙忍出鞘,fight!"))
Copier après la connexion

Le résultat du programme est le suivant :

2
11
Copier après la connexion

Dans les jeux en général, vous devez saisir un nom lors de la connexion, et le nom a généralement une limite de longueur. Étant donné que les Chinois sont habitués à utiliser le chinois comme nom, il est nécessaire de détecter la longueur de la chaîne au format UTF-8.

Résumé

La longueur de la chaîne ASCII utilise la fonction len().

La longueur de la chaîne Unicode utilise la fonction utf8.RuneCountInString().

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal