Heim >Backend-Entwicklung >Golang >So verwenden Sie reguläre Ausdrücke, um die Legitimität von E-Mail-Betreffzeilen in Golang zu überprüfen

So verwenden Sie reguläre Ausdrücke, um die Legitimität von E-Mail-Betreffzeilen in Golang zu überprüfen

王林
王林Original
2023-06-24 11:51:351094Durchsuche

Mit der Popularität des Internets wird E-Mail in unserem täglichen Leben und Arbeiten immer wichtiger. Allerdings erhalten wir manchmal illegale E-Mail-Betreffzeilen, was nicht nur unsere normale Gewohnheit, E-Mails zu senden und zu empfangen, stört, sondern auch viel Ärger in unsere Arbeit und unser Leben bringt. Daher ist für Entwickler die Überprüfung der Legitimität von E-Mail-Betreffzeilen eine wichtige Aufgabe beim Schreiben von E-Mail-bezogenen Anwendungen. In diesem Artikel wird erläutert, wie reguläre Ausdrücke in Golang verwendet werden, um die Legitimität von E-Mail-Betreffzeilen zu überprüfen.

Zunächst müssen wir das Format der E-Mail-Betreffzeile verstehen. Die E-Mail-Betreffzeile besteht aus drei Teilen: Namens- und Adressteil, @-Symbol und Domainnamenteil. Unter diesen kann der Namensadressenteil Chinesisch, Englisch oder Zahlen sein. Das @-Symbol ist das Trennzeichen, das die Namensadressen- und Domänennamensteile verbindet. Der Domänennamensteil kann ein einzelner Domänenname oder mehrere durch „.“ verbundene Domänennamen sein. Hier sind zum Beispiel einige legitime E-Mail-Betreffzeilen:

  • "王小明"749a8bd4d3f86e6244f79d963cad29db
  • "Tom"de21333e9565fd666985e1815440dd0f

Als nächstes können wir golang Regular verwenden Ausdruck ein, um zu überprüfen, ob die E-Mail-Betreffzeile zulässig ist. In Golang können wir das Regexp-Paket verwenden, um reguläre Ausdrücke zu bedienen. Das Folgende ist ein Golang-Code, um die Legitimität der E-Mail-Betreffzeile zu überprüfen:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    // 邮件主题行正则表达式
    pattern := `^([p{Han}w]+|"[p{Han}ws]+"|w+)s*<(w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*)>$`
    // 邮件主题行数据
    subject1 := "王小明<wangxiaoming@example.com>"
    subject2 := "“Tom”<tom@abc.example.com>"
    subject3 := "tom@abc.example.com"
    // 验证邮件主题行
    match1, _ := regexp.MatchString(pattern, subject1)
    match2, _ := regexp.MatchString(pattern, subject2)
    match3, _ := regexp.MatchString(pattern, subject3)
    // 输出验证结果
    fmt.Println(subject1, "匹配结果:", match1)
    fmt.Println(subject2, "匹配结果:", match2)
    fmt.Println(subject3, "匹配结果:", match3)
}

Der obige Code definiert zunächst einen regulären Ausdruck für die E-Mail-Betreffzeile und verwendet dann die MatchString-Methode, um zu überprüfen, ob die E-Mail-Betreffzeile mit der übereinstimmt regulärer Ausdruck. Es ist zu beachten, dass wir in Golang die Unicode-Kategorie verwenden, nämlich p{Han}, um chinesische Zeichen abzugleichen. Um das Lesen zu erleichtern, schreiben wir den regulären Ausdruck außerdem in mehrere Zeilen. Wenn Sie ihn im Code verwenden möchten, müssen Sie ihn in eine Zeile schreiben oder ihn mit Backslashes in Zeilen unterteilen.

Mit dem obigen Code können wir die legitime Betreffzeile der E-Mail zweifelsfrei überprüfen. Natürlich ist das Format der E-Mail-Betreffzeile weitaus mehr als das. Entwickler müssen alle verschiedenen Formate der E-Mail überprüfen, um die Robustheit des Programms sicherzustellen.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie reguläre Ausdrücke, um die Legitimität von E-Mail-Betreffzeilen in Golang zu überprüfen. 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