Maison > développement back-end > Golang > Comment extraire une sous-chaîne entre deux caractères ou chaînes en Go ?

Comment extraire une sous-chaîne entre deux caractères ou chaînes en Go ?

Barbara Streisand
Libérer: 2024-11-02 21:27:30
original
705 Les gens l'ont consulté

How to Extract a Substring Between Two Characters or Strings in Go?

Aller coder pour extraire une sous-chaîne entre deux caractères ou chaînes

Si vous avez une chaîne et que vous souhaitez en extraire une sous-chaîne particulière, Go fournit un mécanisme flexible pour y parvenir.

Par exemple, considérons la chaîne suivante :

<h1>Hello World!</h1>
Copier après la connexion

Extraire la sous-chaîne

Pour extraire " Bonjour le monde!" à partir de cette chaîne en utilisant Go, vous pouvez implémenter la fonction suivante :

<code class="go">// GetStringInBetween Returns empty string if no start string found
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>
Copier après la connexion

Comprendre la fonction

Cette fonction prend trois arguments :

  • str : La chaîne d'origine
  • start : La chaîne ou le caractère de début
  • end : La chaîne ou le caractère de fin

Cela fonctionne comme suit :

  1. Il trouve le premier index de début dans la chaîne d'origine.
  2. Il ajoute la longueur de début à l'index de départ, sautant efficacement la chaîne de début.
  3. Il trouve le premier index de fin dans la sous-chaîne à partir de l'index de départ ajusté.
  4. Il calcule l'index de fin en ajoutant l'index de départ ajusté à l'index de fin trouvé.
  5. Enfin, il renvoie le sous-chaîne de l'index de début ajusté à l'index de fin.

Exemple d'utilisation

Pour utiliser cette fonction, vous pouvez transmettre la chaîne d'origine, la chaîne de début , et la chaîne de fin. Par exemple :

start := "<h1"
end := "</h1>"
substring := GetStringInBetween("&lt;h1&gt;Hello World!&lt;/h1&gt;", start, end)
// substring will be "Hello World!"
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal