Diviser les chaînes en fonction du premier élément dans Go
Dans Go, le fractionnement des chaînes est généralement effectué à l'aide de la fonction strings.Split(). Cependant, lorsque vous traitez des chaînes contenant plusieurs occurrences d'un séparateur, vous pouvez rencontrer des difficultés pour isoler les composants souhaités.
Solution originale avec limitations
L'exemple fourni visait à séparez une chaîne en fonction de la première barre oblique /. Cependant, cette approche rencontrait des problèmes lorsque les noms de branche contenaient également des barres obliques.
Solution améliorée : itération et modification d'un tableau
Pour résoudre ce problème, la solution a été modifiée pour prendre le premier élément du tableau divisé, déplacez les éléments restants d'une position vers la gauche, fusionnez-les avec une barre oblique et supprimez le dernier élément. Même si cette méthode fonctionnait, elle manquait d'élégance.
Solution propre : utilisation de strings.SplitN()
Pour les versions Go 1.18 et supérieures, strings.SplitN() fournit un solution plus concise. Il limite le résultat de la division à deux sous-chaînes, garantissant l'isolation des composants distants et du nom de branche.
<code class="go">func ParseBranchname(branchString string) (remote, branchname string) { branchArray := strings.SplitN(branchString, "/", 2) remote = branchArray[0] branchname = branchArray[1] return }</code>
Avantages de strings.SplitN()
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!