Maison > développement back-end > Golang > Comment convertir un tableau d'entiers en chaîne délimitée en Go à l'aide d'un One-Liner ?

Comment convertir un tableau d'entiers en chaîne délimitée en Go à l'aide d'un One-Liner ?

DDD
Libérer: 2024-12-05 12:36:14
original
876 Les gens l'ont consulté

How to Convert an Array of Integers to a Delimited String in Go using a One-Liner?

One-Liner : Transformer un tableau d'entiers en chaîne

Dans le domaine de la programmation, il est souvent nécessaire de convertir une collection d'entiers en un ensemble délimité chaîne. Considérez un tableau d'entiers []int{1, 2, 3} que vous souhaitez exprimer sous la forme "1, 2, 3" avec un délimiteur personnalisable. Alors que Python et Go fournissent des solutions intégrées éloquentes, cet article explore une ligne unique élégante qui peut réaliser la transformation sans effort dans Go.

Conversion délimitée dans Go

Tout d'abord, une fonction utilitaire arrayToString est défini pour servir l’objectif de conversion. Cette fonction prend un tableau d'entiers et un délimiteur comme paramètres et renvoie la chaîne souhaitée.

func arrayToString(a []int, delim string) string {
    return strings.Trim(strings.Replace(fmt.Sprint(a), " ", delim, -1), "[]")
}
Copier après la connexion

Le cœur de la conversion réside dans les fonctions strings.Trim et strings.Replace. fmt.Sprint(a) convertit le tableau en chaîne, qui est ensuite modifiée en remplaçant " " (caractère espace) par le délimiteur souhaité. L'argument -1 dans Remplacer garantit que toutes les occurrences d'espace sont remplacées. Enfin, strings.Trim supprime tous les caractères "[]" de début ou de fin pouvant provenir du tableau d'origine.

Utilisation polyvalente

La fonction arrayToString vous permet de convertir des tableaux d'entiers en chaînes avec délimiteurs variables. Par exemple, le code :

A := []int{1, 2, 3, 4, 5, 6, 7, 8, 9}
fmt.Println(arrayToString(A, ", ")) // Output: "1, 2, 3, 4, 5, 6, 7, 8, 9"
fmt.Println(arrayToString(A, ", ")) // Output: "1, 2, 3, 4, 5, 6, 7, 8, 9"
fmt.Println(arrayToString(A, ";")) // Output: "1; 2; 3; 4; 5; 6; 7; 8; 9"
Copier après la connexion

démontre la flexibilité de la conversion, produisant des chaînes avec différents délimiteurs en fonction de l'entrée.

Personnalisation de la sortie

Si vous préférez inclure un espace après le délimiteur, vous pouvez améliorer la fonction arrayToString comme suit :

func arrayToString(a []int, delim string) string {
    return strings.Trim(strings.Replace(fmt.Sprint(a), " ", delim + " ", -1), "[]")
}
Copier après la connexion

Cet ajout garantit qu'un espace est inséré après chaque délimiteur dans la chaîne de sortie.

Conclusion

En exploitant la puissance des chaînes.Les fonctions Trim et Strings.Replace, notre one-liner transforme efficacement un tableau d'entiers en une chaîne délimitée en Aller. Cette technique offre une polyvalence dans les délimiteurs et permet une personnalisation du formatage de sortie, ce qui en fait un outil précieux pour diverses tâches de manipulation de chaînes.

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!

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