Maison >développement back-end >Golang >Comment diviser efficacement des chaînes et attribuer des variables dans Go ?

Comment diviser efficacement des chaînes et attribuer des variables dans Go ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-14 06:24:16990parcourir

How to Efficiently Split Strings and Assign Variables in Go?

Diviser des chaînes et attribuer des variables dans Go

En Python, diviser une chaîne et attribuer ses composants à des variables est simple en utilisant la méthode split. Cependant, dans Go, tenter une approche similaire semble échouer en raison d'une inadéquation du nombre d'affectations.

Question : attribution de valeurs de chaîne divisées en une seule étape

Comment pouvons-nous diviser efficacement une chaîne et lui attribuer valeurs à plusieurs variables en une seule opération dans Go ?

Réponse :

Il y a deux possibilités approches :

Approche en deux étapes :

Dans cette méthode, nous divisons d'abord la chaîne à l'aide de strings.Split, puis attribuons les éléments de tranche résultants à des variables :

package main

import (
    "fmt"
    "strings"
)

func main() {
    s := strings.Split("127.0.0.1:5432", ":")
    ip, port := s[0], s[1]
    fmt.Println(ip, port)
}

Approche en une étape à l'aide de net.SplitHostPort :

Go fournit une fonction intégrée net.SplitHostPort spécialement conçue pour diviser les chaînes représentant les adresses réseau en composants hôte et port :

package main

import (
    "fmt"
    "net"
)

func main() {
    host, port, err := net.SplitHostPort("127.0.0.1:5432")
    fmt.Println(host, port, err)
}

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