Maison >développement back-end >Golang >Comment trouver une sous-chaîne spécifiée dans une chaîne en langage Go

Comment trouver une sous-chaîne spécifiée dans une chaîne en langage Go

青灯夜游
青灯夜游original
2021-06-18 11:56:534666parcourir

Dans le langage Go, vous pouvez utiliser le découpage avec la fonction "strings.Index()" pour trouver la sous-chaîne spécifiée. Le format de syntaxe est "strings[strings.Index(string, "Character")+strings. .Index (chaîne[position de départ :], "caractère") :]". La fonction Index() du package strings peut rechercher une autre sous-chaîne dans une chaîne et obtenir les positions de début et de fin de la sous-chaîne.

Comment trouver une sous-chaîne spécifiée dans une chaîne en langage Go

L'environnement d'exploitation de ce tutoriel : système Windows 10, GO 1.18, ordinateur Dell G3.

Obtenir une certaine section de caractères dans une chaîne est une opération courante en développement. Nous appelons généralement une certaine section de caractères dans une chaîne une sous-chaîne.

Dans l'exemple suivant, la fonction strings.Index() est utilisée pour rechercher une autre sous-chaîne dans la chaîne. Le code est le suivant :

tracer := "死神来了, 死神bye bye"
comma := strings.Index(tracer, ", ")
pos := strings.Index(tracer[comma:], "死神")
fmt.Println(comma, pos, tracer[comma+pos:])

La sortie du programme est la suivante :

12 3 死神bye bye

La description du code est la suivante :

1) La ligne 2 tente de rechercher des virgules chinoises dans la chaîne de suivi. La position renvoyée est stockée dans la variable virgule. représente la position du code ASCII à partir de la chaîne de traceur.

La fonction strings.Index() ne fournit pas de fonction pour lancer la recherche à partir d'un certain décalage comme les autres langages. Cependant, nous pouvons effectuer des opérations de découpage sur des chaînes pour implémenter cette logique.

2) À la ligne 4, tracer[comma:] construit une sous-chaîne à partir de la position virgule de tracer jusqu'à la fin de la chaîne de traceur et la renvoie à string.Index() pour la réindexation. La position résultante est relative au traceur[virgule :].

virgule La position de la virgule est 12, tandis que pos est la position relative avec une valeur de 3. Afin d'obtenir la position du deuxième "dieu de la mort", qui est la chaîne après la virgule, il faut ajouter une virgule au décalage relatif de pos, calculer le décalage de 15, puis trancher le traceur[virgule+pos:] Calculez la sous-chaîne finale et obtenez le résultat final : "Death bye bye".

Apprentissage recommandé : Tutoriel Golang

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