Extraction de sous-chaînes dans Go
Si vous devez extraire une sous-chaîne spécifique d'une chaîne, Go fournit la fonction GetStringInBetween pour accomplir cette tâche.
Problème :
Vous souhaitez extraire une sous-chaîne particulière d'une chaîne qui contient des chaînes ou des caractères de début et de fin connus. Par exemple, étant donné la chaîne "
Solution :
À l'aide de la fonction GetStringInBetween, vous pouvez facilement extraire la sous-chaîne souhaitée. La fonction prend trois arguments :
Voici le code Go pour la fonction GetStringInBetween :
<code class="go">func GetStringInBetween(str string, start string, end string) (result string) { s := strings.Index(str, start) if s == -1 { return } s += len(start) e := strings.Index(str[s:], end) if e == -1 { return } e += s + e - 1 return str[s:e] }</code>
Exemple d'utilisation :
Pour démontrer le fonctionnement de la fonction GetStringInBetween, considérez le code suivant :
<code class="go">originalString := "<h1>Hello World!</h1>" substring := GetStringInBetween(originalString, "<h1>", "</h1>") fmt.Println(substring) // Output: Hello World!</code>
Détails d'implémentation :
La fonction GetStringInBetween d'abord localise le point de départ de la sous-chaîne dans la chaîne d'origine à l'aide de la fonction strings.Index. Si aucun point de départ n'est trouvé, la fonction renvoie une chaîne vide.
Elle ajoute ensuite la longueur de la chaîne de départ à l'index du point de départ pour garantir que l'extraction de la sous-chaîne commence après la chaîne de départ.
Ensuite, il recherche le point final de la sous-chaîne dans la partie restante de la chaîne d'origine en utilisant à nouveau strings.Index. Si aucun point de fin n'est trouvé, la fonction renvoie une chaîne vide.
Enfin, la fonction ajoute le point de départ et la longueur de la chaîne de fin à l'index du point de fin pour extraire la sous-chaîne souhaitée.
Cette approche vous permet d'extraire facilement des sous-chaînes de chaînes, en particulier lorsque vous avez des chaînes ou des caractères de début et de fin spécifiques.
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!