Maison > développement back-end > Golang > Comment puis-je référencer efficacement les paramètres dans fmt.Sprintf de Go ?

Comment puis-je référencer efficacement les paramètres dans fmt.Sprintf de Go ?

DDD
Libérer: 2024-11-07 16:40:03
original
908 Les gens l'ont consulté

How Can I Efficiently Reference Parameters in Go's fmt.Sprintf?

Référencer efficacement les paramètres dans fmt.Sprintf

Pour formater avec précision les chaînes dans Go à l'aide de fmt.Sprintf, il est crucial de comprendre comment les arguments correspondent formater les verbes. Par défaut, chaque verbe formate le prochain argument disponible, créant une relation séquentielle.

Cependant, vous pouvez surmonter le besoin de transmettre le même paramètre plusieurs fois en utilisant des index d'arguments explicites. Faites précéder le verbe de formatage de [n], où n représente la position à un index de l'argument à formater.

Cette technique est particulièrement utile dans des fonctions comme getTableCreationCommands. Au lieu de passer la variable v quatre fois, vous pouvez la transmettre une fois et la référencer dans la chaîne fmt.Sprintf comme :

return fmt.Sprintf(`
    CREATE TABLE share_%[1]v PARTITION OF share FOR VALUES IN (%[1]v);
    CREATE TABLE nearby_%[1]v PARTITION OF nearby FOR VALUES IN (%[1]v);
`, s)
Copier après la connexion

Dans cet exemple, nous passons la chaîne s une fois et utilisons l'argument index [ 1] pour y faire référence dans la chaîne formatée. Cette approche rationalise le processus de formatage, réduit la duplication de code et améliore la maintenabilité.

Voici un exemple complet :

package main

import "fmt"

func getTableCreationCommands(s string) string {
    return fmt.Sprintf(`
        CREATE TABLE share_%[1]v PARTITION OF share FOR VALUES IN (%[1]v);
        CREATE TABLE nearby_%[1]v PARTITION OF nearby FOR VALUES IN (%[1]v);
    `, s)
}

func main() {
    fmt.Println(getTableCreationCommands("X"))
}
Copier après la connexion

Sortie :

CREATE TABLE share_X PARTITION OF share FOR VALUES IN (X);
CREATE TABLE nearby_X PARTITION OF nearby FOR VALUES IN (X);
Copier après la connexion

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