Maison > développement back-end > Golang > le corps du texte

Comment utiliser des expressions régulières dans Golang pour vérifier si l'entrée est une liste de films légale

WBOY
Libérer: 2023-06-24 10:18:18
original
1134 Les gens l'ont consulté

Utiliser des expressions régulières dans Golang pour valider que l'entrée est une liste légale de films est une tâche relativement simple. Cet article explique comment utiliser Golang pour faire correspondre les données d'entrée avec des expressions régulières afin de vérifier si l'entrée est conforme au format d'une liste de films.

Tout d'abord, nous devons comprendre le format de la liste des films. Une liste de films de base peut contenir des informations telles que le titre du film, le réalisateur, l'année et la classification. Ici, nous utiliserons le format de liste de films suivant [Exemple] :

Titanic,James Cameron,1997,7.7
Forrest Gump,Robert Zemeckis,1994,8.8
Copier après la connexion

L'exemple ci-dessus contient deux films : "Titanic" et "Forrest Gump". Chaque ligne de données contient le nom du film, le réalisateur, l'année et la note, séparés par des virgules.

Ensuite, nous utiliserons des expressions régulières en golang pour vérifier si l'entrée est conforme au format ci-dessus. En Golang, les expressions régulières sont généralement constituées de chaînes d'expressions régulières et d'objets d'expressions régulières. Une chaîne d'expression régulière est une chaîne contenant des caractères spéciaux et des caractères ordinaires, qui décrit le modèle de correspondance d'une ou plusieurs chaînes. Un objet d'expression régulière est une expression régulière compilée qui peut être utilisée pour effectuer des opérations de recherche et de remplacement de texte.

Ensuite, nous écrirons un programme Golang pour vérifier si le texte saisi est conforme au format de la liste de films ci-dessus. Voici les étapes pour mettre en œuvre le programme :

1. Définir l'expression régulière

Nous devons définir une expression régulière pour correspondre au format de la liste de films. En Golang, nous pouvons utiliser des chaînes d'expression régulière pour définir une expression régulière.

var movieListRe = regexp.MustCompile(`^([a-zA-Zs]+),([a-zA-Zs]+),(d{4}),([0-9].[0-9])$`)
Copier après la connexion

L'expression régulière ci-dessus correspond à chaque ligne de données de la liste de films, qui contient quatre groupes :

  • Groupe 1 (nom du film) : une chaîne avant la virgule, composée d'une ou plusieurs lettres et espaces.
  • Groupe 2 (Directeur) : Une chaîne entre deux virgules, composée d'une ou plusieurs lettres et espaces.
  • Groupe 3 (Année) : quatre numéros.
  • Groupe 4 (Note) : Chaîne après virgule, composée de nombres et de points décimaux.

2. Définir les données d'entrée

Nous devons définir une chaîne contenant les données de la liste de films comme données d'entrée.

data := `Titanic,James Cameron,1997,7.7
Forrest Gump,Robert Zemeckis,1994,8.8`
Copier après la connexion

Les données d'entrée ci-dessus contiennent deux films, "Titanic" et "Forrest Gump".

3. Vérifier les données d'entrée

Nous utilisons des objets d'expression régulière pour faire correspondre les données d'entrée. En Golang, nous pouvons utiliser la fonction MatchString pour la correspondance.

isValid := movieListRe.MatchString(data)
Copier après la connexion

Si les données d'entrée correspondent au modèle correspondant de l'expression régulière, renvoyez vrai sinon, renvoyez faux ;

4. Résultats de sortie

Enfin, nous devons sortir les résultats de la vérification.

if isValid {
    fmt.Println("输入数据符合电影列表格式")
} else {
    fmt.Println("输入数据不符合电影列表格式")
}
Copier après la connexion

Une fois le programme ci-dessus exécuté, si les données d'entrée sont conformes au format de la liste de films, il affichera « Les données d'entrée sont conformes au format de la liste de films » ; sinon, il affichera « Les données d'entrée ne sont pas conformes au format de la liste de films » ; format de liste de films".

L'exemple de code complet est le suivant :

package main

import (
    "fmt"
    "regexp"
)

var movieListRe = regexp.MustCompile(`^([a-zA-Zs]+),([a-zA-Zs]+),(d{4}),([0-9].[0-9])$`)

func main() {
    data := `Titanic,James Cameron,1997,7.7
Forrest Gump,Robert Zemeckis,1994,8.8`

    isValid := movieListRe.MatchString(data)

    if isValid {
        fmt.Println("输入数据符合电影列表格式")
    } else {
        fmt.Println("输入数据不符合电影列表格式")
    }
}
Copier après la connexion

Une fois le programme ci-dessus exécuté, "les données d'entrée sont conformes au format de la liste de films" sont sorties. En effet, les données d'entrée sont conformes aux exigences de format de la liste de films. Si le nom du film ou le nom du réalisateur dans les données est écrit sous forme de nombre, ou si la note est écrite sous forme de nombre sans point décimal et que le programme est à nouveau exécuté, "Les données d'entrée ne sont pas conformes au format de la liste de films" être émis.

Résumé :

Utiliser des expressions régulières dans Golang pour valider que l'entrée est une liste de films légale est une tâche simple et utile. Nous pouvons facilement accomplir cette tâche en définissant des expressions régulières, en définissant les données d'entrée, en vérifiant les données d'entrée et en produisant les résultats. En particulier, lors de l'écriture d'expressions régulières, nous devons décrire avec précision le modèle de correspondance pour garantir que les exigences de format des données sont respectées.

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!

Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal