Extraire des chaînes d'une chaîne dans Go
Supposons que vous ayez une chaîne comme celle-ci :
<h1>Hello World!</h1>
Comment voudriez-vous extraire "Hello World!" à partir de là en utilisant Go ? Cette question est particulièrement pertinente pour les débutants en Go.
Solution :
Pour récupérer une chaîne spécifique entre deux caractères ou chaînes connus, vous pouvez exploiter le code Go suivant :
<code class="go">// GetStringInBetween returns an empty string if no start string is found func GetStringInBetween(str, start, end string) 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>
Explication :
Ce code commence par trouver l'index de la chaîne « début » dans la plus grande chaîne. S'il n'est pas trouvé, une chaîne vide est renvoyée. Il incrémente ensuite l'index de la longueur de la chaîne « début » pour pointer vers le premier caractère après « début ».
Ensuite, il trouve l'index de la chaîne « fin » dans la sous-chaîne en commençant par le précédent. indiquer. Si elle n'est pas trouvée, une chaîne vide est renvoyée à nouveau.
Enfin, le code calcule la longueur de la sous-chaîne souhaitée en ajoutant les longueurs de « début » et « fin » à l'index de « fin ». Il utilise ensuite cette longueur pour extraire la chaîne de la sous-chaîne.
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!