Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk mengesahkan nama domain alamat e-mel menggunakan ungkapan biasa dalam golang

Bagaimana untuk mengesahkan nama domain alamat e-mel menggunakan ungkapan biasa dalam golang

PHPz
Lepaskan: 2023-06-24 08:12:17
asal
1465 orang telah melayarinya

Perlu menggunakan ungkapan biasa untuk mengesahkan nama domain alamat e-mel dalam golang, kerana alamat e-mel adalah sangat biasa dalam aplikasi praktikal, dan peraturan untuk alamat e-mel juga agak rumit. Dalam kebanyakan kes, kami perlu mengesahkan sama ada nama domain alamat e-mel yang dimasukkan oleh pengguna memenuhi spesifikasi untuk memastikan kesahihan dan keselamatan data.

Artikel ini akan memperkenalkan cara menggunakan ungkapan biasa untuk mengesahkan nama domain alamat e-mel dalam golang. Pertama, kita perlu memahami peraturan asas alamat e-mel.

Alamat e-mel terdiri daripada dua bahagian: "nama pengguna" dan "nama domain", disambungkan dengan simbol "@" di tengah. Antaranya, bahagian nama domain termasuk nama hos, nama domain peringkat pertama, nama domain peringkat kedua dan maklumat lain, dan merupakan bahagian penting dalam alamat e-mel.

Apabila mengesahkan nama domain alamat e-mel, kami perlu memberi perhatian kepada perkara berikut:

  1. Nama domain terdiri daripada berbilang perkataan dan perkataan disambungkan dengan " ." simbol.
  2. Nama domain mesti bermula dan berakhir dengan huruf atau nombor.
  3. Aksara khas tidak boleh disertakan dalam nama domain, seperti ruang, koma, titik bertitik, dsb.
  4. Nama domain boleh mengandungi sempang "-", tetapi ia tidak boleh bermula atau berakhir dengan sempang.

Dengan asas peraturan ini, kami boleh menggunakan ungkapan biasa untuk mengesahkan nama domain alamat e-mel. Dalam golang, kami menggunakan pakej "regexp" untuk mengendalikan ungkapan biasa. Berikut ialah contoh kod yang boleh mengesahkan sama ada rentetan ialah nama domain alamat e-mel yang sah:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    str := "example.com"
    reg := regexp.MustCompile(`^[a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(.[a-zA-Z]{2,})+$`)
    if !reg.MatchString(str) {
        fmt.Println("Invalid domain name")
    } else {
        fmt.Println("Valid domain name")
    }
}
Salin selepas log masuk

Dalam kod di atas, kami menggunakan ungkapan biasa untuk mengesahkan sama ada rentetan itu ialah nama domain alamat e-mel yang sah. Maksud ungkapan biasa ini adalah seperti berikut:

  1. ^ bermaksud memadankan permulaan rentetan, $ bermaksud memadankan hujung rentetan.
  2. [a-zA-Z0-9] bermaksud memadankan huruf atau nombor, dan mesti bermula dan berakhir dengan huruf atau nombor.
  3. [a-zA-Z0-9-]{0,61} bermaksud huruf, nombor dan sempang yang sepadan dan panjangnya tidak boleh melebihi 63 aksara.
  4. (.[a-zA-Z]{2,})+ bermaksud memadankan satu atau lebih nama domain berturut-turut setiap nama domain disambungkan dengan simbol ", yang menunjukkan nama domain peringkat pertama, kedua nama domain peringkat, dsb.

Menggunakan ungkapan biasa ini boleh memenuhi kebanyakan keperluan pengesahan nama domain alamat e-mel. Jika terdapat keadaan istimewa lain, anda juga boleh mengubah suai ungkapan biasa untuk menyesuaikan diri dengan keperluan yang berbeza.

Ringkasnya, menggunakan ungkapan biasa untuk mengesahkan nama domain alamat e-mel ialah cara yang mudah dan cekap untuk meningkatkan kualiti kod dan keselamatan aplikasi kami. Ia juga sangat mudah untuk menggunakan ungkapan biasa dalam golang Anda hanya perlu mengimport pakej "regexp".

Atas ialah kandungan terperinci Bagaimana untuk mengesahkan nama domain alamat e-mel menggunakan ungkapan biasa dalam golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan