Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie reguläre Ausdrücke in Golang, um zu überprüfen, ob es sich bei der URL-Adresse um einen Domänennamen der dritten Ebene handelt

So verwenden Sie reguläre Ausdrücke in Golang, um zu überprüfen, ob es sich bei der URL-Adresse um einen Domänennamen der dritten Ebene handelt

WBOY
WBOYOriginal
2023-06-24 08:06:554271Durchsuche

Beim Schreiben von Golang-Anwendungen ist es häufig erforderlich, URL-Adressen zu überprüfen. Dabei können reguläre Ausdrücke ein sehr nützliches Werkzeug sein, mit dessen Hilfe die Richtigkeit von URL-Adressen effektiv überprüft werden kann.

In diesem Artikel erfahren Sie, wie Sie mithilfe regulärer Ausdrücke überprüfen, ob es sich bei der URL-Adresse um einen Domänennamen der dritten Ebene handelt.

1. Verstehen Sie die Grundlagen regulärer Ausdrücke

Reguläre Ausdrücke sind eine Sprache, die zur Beschreibung von Textmustern verwendet wird. In den regulären Ausdrücken von Golang sind einige gängige Symbole und Darstellungsmethoden:

  1. " steht für ein beliebiges Zeichen.
  2. „*“ bedeutet, dass das vorherige Zeichen oder der vorherige Ausdruck null oder mehrmals gefunden wurde.
  3. "+" bedeutet, dass das vorherige Zeichen oder der vorherige Ausdruck einmal oder mehrmals gefunden wird.
  4. "?" bedeutet, dass das vorherige Zeichen oder der vorherige Ausdruck null oder einmal vorhanden ist.
  5. „d“ steht für Zahl.
  6. „w“ steht für jedes Wortzeichen, einschließlich Buchstaben, Zahlen und Unterstriche.

2. Schreiben Sie einen regulären Ausdruck, der mit der URL-Adresse des Domänennamens der dritten Ebene übereinstimmt.

Schreiben wir einen regulären Ausdruck, der mit der URL-Adresse des Domänennamens der dritten Ebene übereinstimmt. Der Domänenname der dritten Ebene bezieht sich auf die drei Teile im Hostnamen-Teil (Hostname) der URL. Zum Beispiel: www.example.com, blog.example.com usw.

^(www.)?([a-zA-Z0-9]+).([a-zA-Z0-9]+).([a-zA-Z0-9]+)$

Analyse :

1, ^ steht für den Anfang der passenden Zeichenfolge;
2, (www.)? steht für das optionale Präfix www name Der erste Teil;
4, . stellt das Trennzeichen dar; ([a-zA-Z0-9]+) stellt das Trennzeichen dar; , ([a -zA-Z0-9]+) stellt den dritten Teil des Domänennamens der dritten Ebene dar
8, $ stellt das Ende der passenden Zeichenfolge dar.

3. Verwenden Sie reguläre Ausdrücke, um URL-Adressen in Golang zu überprüfen.

Für die Verwendung regulärer Ausdrücke in Golang ist das Paket „regexp“ erforderlich. Dieses Paket stellt die Funktion „MatchString“ bereit, mit der reguläre Ausdrücke abgeglichen werden können.

Das Folgende ist ein vollständiges Golang-Beispielprogramm, das zeigt, wie reguläre Ausdrücke verwendet werden, um zu überprüfen, ob es sich bei der URL-Adresse um einen Domänennamen der dritten Ebene handelt.

package main

import (
    "fmt"
    "regexp"
)

func main() {
    url := "www.example.com"
    if matchUrl(url) {
        fmt.Printf("%s 是三级域名
", url)
    } else {
        fmt.Printf("%s 不是三级域名
", url)
    }

    url = "blog.example.com"
    if matchUrl(url) {
        fmt.Printf("%s 是三级域名
", url)
    } else {
        fmt.Printf("%s 不是三级域名
", url)
    }

    url = "example.com"
    if matchUrl(url) {
        fmt.Printf("%s 是三级域名
", url)
    } else {
        fmt.Printf("%s 不是三级域名
", url)
    }
}

func matchUrl(url string) bool {
    re := regexp.MustCompile(`^(www.)?([a-zA-Z0-9]+).([a-zA-Z0-9]+).([a-zA-Z0-9]+)$`)
    return re.MatchString(url)
}

Im obigen Programm definieren wir zunächst eine URL-Adresse. Rufen Sie dann die Funktion „matchUrl“ auf und übergeben Sie die URL-Adresse als Parameter.

In der Funktion „matchUrl“ verwenden wir die Funktion „regexp.MustCompile“, um den regulären Ausdruck zu kompilieren. Verwenden Sie dann die Funktion „re.MatchString“, um abzugleichen, ob die URL-Adresse die Anforderungen des regulären Ausdrucks erfüllt. Die Funktion gibt true zurück, wenn die Übereinstimmung erfolgreich ist, andernfalls false.

Wie Sie sehen können, haben wir im obigen Beispielprogramm die drei URL-Adressen www.example.com, blog.example.com und example.com überprüft. Nur die ersten beiden erfüllen die Anforderungen der Third-Level-Domain Name, also die Ausgabe Das Ergebnis ist:

www.example.com 是三级域名
blog.example.com 是三级域名
example.com 不是三级域名

Zusammenfassung:

Es ist nicht schwierig, in Golang reguläre Ausdrücke zu verwenden, um zu überprüfen, ob eine URL-Adresse ein Domänenname der dritten Ebene ist. Schreiben Sie einfach einen regulären Ausdruck, der die Bedingungen erfüllt, und passen Sie ihn dann über die im Paket „regexp“ bereitgestellten Funktionen an.

Ich hoffe, die Einführung in diesem Artikel kann Ihnen hilfreich sein!

Das obige ist der detaillierte Inhalt vonSo verwenden Sie reguläre Ausdrücke in Golang, um zu überprüfen, ob es sich bei der URL-Adresse um einen Domänennamen der dritten Ebene handelt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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