Heim > Backend-Entwicklung > Golang > So verwenden Sie reguläre Ausdrücke in Golang, um zu überprüfen, ob es sich bei der Eingabe um eine legale Filmliste handelt

So verwenden Sie reguläre Ausdrücke in Golang, um zu überprüfen, ob es sich bei der Eingabe um eine legale Filmliste handelt

WBOY
Freigeben: 2023-06-24 10:18:18
Original
1156 Leute haben es durchsucht

Die Verwendung regulärer Ausdrücke in Golang zur Validierung, dass es sich bei der Eingabe um eine zulässige Liste von Filmen handelt, ist eine relativ einfache Aufgabe. In diesem Artikel wird erläutert, wie Sie mit Golang Eingabedaten mit regulären Ausdrücken abgleichen und überprüfen, ob die Eingabe dem Format einer Filmliste entspricht.

Zuerst müssen wir das Format der Filmliste verstehen. Eine einfache Filmliste kann Informationen wie Filmtitel, Regisseur, Jahr und Bewertung enthalten. Hier verwenden wir das folgende Filmlistenformat [Beispiel]:

Titanic,James Cameron,1997,7.7
Forrest Gump,Robert Zemeckis,1994,8.8
Nach dem Login kopieren

Das obige Beispiel enthält zwei Filme: „Titanic“ und „Forrest Gump“. Jede Datenzeile enthält den Namen, den Regisseur, das Jahr und die Bewertung des Films, getrennt durch Kommas.

Als nächstes verwenden wir reguläre Ausdrücke in Golang, um zu überprüfen, ob die Eingabe dem oben genannten Format entspricht. In Golang bestehen reguläre Ausdrücke normalerweise aus regulären Ausdruckszeichenfolgen und regulären Ausdrucksobjekten. Eine reguläre Ausdruckszeichenfolge ist eine Zeichenfolge, die Sonderzeichen und gewöhnliche Zeichen enthält und das Übereinstimmungsmuster einer oder mehrerer Zeichenfolgen beschreibt. Ein reguläres Ausdrucksobjekt ist ein kompilierter regulärer Ausdruck, der zum Durchführen von Textsuch- und Ersetzungsvorgängen verwendet werden kann.

Als nächstes schreiben wir ein Golang-Programm, um zu prüfen, ob der Eingabetext dem Format der obigen Filmliste entspricht. Im Folgenden sind die Schritte zum Implementieren des Programms aufgeführt:

1. Definieren Sie den regulären Ausdruck.

Wir müssen einen regulären Ausdruck definieren, der dem Format der Filmliste entspricht. In Golang können wir reguläre Ausdruckszeichenfolgen verwenden, um einen regulären Ausdruck zu definieren.

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

Der obige reguläre Ausdruck stimmt mit jeder Datenzeile in der Filmliste überein, die vier Gruppen enthält:

  • Gruppe 1 (Filmname): eine Zeichenfolge vor dem Komma, bestehend aus einem oder mehreren Buchstaben und Leerzeichen.
  • Gruppe 2 (Direktor): Eine Zeichenfolge zwischen zwei Kommas, bestehend aus einem oder mehreren Buchstaben und Leerzeichen.
  • Gruppe 3 (Jahr): Vier Zahlen.
  • Gruppe 4 (Bewertung): Zeichenfolge nach Komma, bestehend aus Zahlen und Dezimalpunkten.

2. Eingabedaten definieren

Wir müssen eine Zeichenfolge definieren, die Filmlistendaten als Eingabedaten enthält.

data := `Titanic,James Cameron,1997,7.7
Forrest Gump,Robert Zemeckis,1994,8.8`
Nach dem Login kopieren

Die obigen Eingabedaten enthalten zwei Filme, „Titanic“ und „Forrest Gump“.

3. Eingabedaten überprüfen

Wir verwenden reguläre Ausdrucksobjekte, um Eingabedaten abzugleichen. In Golang können wir die MatchString-Funktion zum Abgleichen verwenden.

isValid := movieListRe.MatchString(data)
Nach dem Login kopieren

Wenn die Eingabedaten mit dem Übereinstimmungsmuster des regulären Ausdrucks übereinstimmen, geben Sie true zurück, andernfalls geben Sie false zurück.

4. Ergebnisse ausgeben

Abschließend müssen wir die Verifizierungsergebnisse ausgeben.

if isValid {
    fmt.Println("输入数据符合电影列表格式")
} else {
    fmt.Println("输入数据不符合电影列表格式")
}
Nach dem Login kopieren

Wenn das obige Programm ausgeführt wird und die Eingabedaten dem Filmlistenformat entsprechen, wird „Die Eingabedaten entsprechen dem Filmlistenformat“ ausgegeben. Andernfalls wird „Die Eingabedaten entsprechen nicht dem Filmlistenformat“ ausgegeben Filmlistenformat".

Das vollständige Codebeispiel lautet wie folgt:

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("输入数据不符合电影列表格式")
    }
}
Nach dem Login kopieren

Nachdem das obige Programm ausgeführt wurde, wird „Die Eingabedaten entsprechen dem Filmlistenformat“ ausgegeben. Dies liegt daran, dass die Eingabedaten den Formatanforderungen der Filmliste entsprechen. Wenn der Filmname oder der Name des Regisseurs in den Daten als Zahl geschrieben wird oder die Bewertung als Zahl ohne Dezimalpunkt geschrieben wird und das Programm erneut ausgeführt wird, wird „Die Eingabedaten entsprechen nicht dem Filmlistenformat“ angezeigt ausgegeben werden.

Zusammenfassung:

Die Verwendung regulärer Ausdrücke in Golang zur Validierung, dass es sich bei der Eingabe um eine legale Filmliste handelt, ist eine einfache und nützliche Aufgabe. Wir können diese Aufgabe leicht erfüllen, indem wir reguläre Ausdrücke definieren, Eingabedaten definieren, Eingabedaten überprüfen und Ergebnisse ausgeben. Insbesondere beim Schreiben regulärer Ausdrücke müssen wir das Übereinstimmungsmuster genau beschreiben, um sicherzustellen, dass die Formatanforderungen der Daten erfüllt werden.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie reguläre Ausdrücke in Golang, um zu überprüfen, ob es sich bei der Eingabe um eine legale Filmliste handelt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage