Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan ungkapan biasa dalam golang untuk mengesahkan sama ada alamat URL ialah nama domain peringkat ke-11

Cara menggunakan ungkapan biasa dalam golang untuk mengesahkan sama ada alamat URL ialah nama domain peringkat ke-11

WBOY
WBOYasal
2023-06-24 08:27:241007semak imbas

Di Golang, ungkapan biasa ialah alat berkuasa yang boleh digunakan untuk mengesahkan sama ada alamat URL ialah nama domain peringkat ke-11. Dalam artikel ini, kami akan meneroka cara untuk mencapai ini menggunakan ungkapan biasa.

  1. Apakah nama domain peringkat ke-11?

Dalam Internet, nama domain ialah rentetan yang digunakan untuk mengenal pasti sumber rangkaian. Nama domain dibahagikan mengikut struktur hierarki, dari tinggi ke rendah: "nama domain akar", "nama domain peringkat atas", "nama domain peringkat kedua", "nama domain peringkat ketiga", "domain peringkat keempat nama"... hingga ke "nama domain sebelas peringkat".

Nama domain peringkat ke-11 yang biasa adalah seperti berikut:

www.example.com.cn.foo.bar.baz.qux.fred.plugh.xyz

  1. Peraturan pengesahan ungkapan biasa

Kami boleh menggunakan ungkapan biasa untuk mengesahkan sama ada alamat URL ialah nama domain peringkat ke-11 Untuk nama domain peringkat ke-11 yang sah, ia mesti memenuhi syarat berikut:

  • Panjang nama domain tidak boleh melebihi 253 aksara; setiap peringkat nama domain hendaklah hanya terdiri daripada huruf, nombor dan sempang ( "-");
  • Berdasarkan peraturan di atas, kita boleh menulis ungkapan biasa berikut:
  • ^[a-zA-Z0-9]([a-zA-Z0-9-] { 0,61}[a-zA-Z0-9])?.([a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0- 9 ])?.){9}[a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?$
  • Dalam ungkapan biasa di atas, ^ bermaksud memadankan permulaan rentetan dan $ bermaksud memadankan hujung rentetan. Aksara lain dalam ungkapan biasa mewakili aksara sepadan yang sepadan, contohnya:

[a-zA-Z0-9] mewakili huruf dan nombor yang sepadan

- mewakili garis mendatar yang sepadan ( Ambil perhatian bahawa aksara melarikan diri "" diperlukan);

{0,61} bermaksud memadankan 0 hingga 61 aksara.
  • Golang melaksanakan pengesahan ungkapan biasa
  • Di Golang, anda boleh menggunakan pakej regexp untuk memproses ungkapan biasa. Untuk keperluan kami, anda boleh menggunakan kod berikut:
package main

import (
    "fmt"
    "regexp"
)

func main() {
    url := "www.example.com.cn.foo.bar.baz.qux.fred.plugh.xyz"
    regex := "^[a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.){9}[a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?$"
    matched, _ := regexp.MatchString(regex, url)
    if matched {
        fmt.Println("URL地址为11级域名")
    } else {
        fmt.Println("URL地址不是11级域名")
    }
}
    Dalam kod di atas, kami mula-mula mentakrifkan alamat URL, dan kemudian menggunakan fungsi MatchString untuk melaksanakan pemadanan ungkapan biasa padanya. Jika perlawanan berjaya, ini bermakna alamat URL ialah nama domain peringkat ke-11.
Ringkasan

Melalui kajian artikel ini, kami mempelajari cara menggunakan ungkapan biasa untuk mengesahkan sama ada alamat URL ialah nama domain peringkat ke-11 dan melaksanakan ini fungsi di Golang . Apabila kami perlu mengesahkan alamat URL, kami boleh menulis ungkapan biasa mengikut peraturan yang serupa dan menggunakan pakej regexp Golang untuk pemprosesan.

Atas ialah kandungan terperinci Cara menggunakan ungkapan biasa dalam golang untuk mengesahkan sama ada alamat URL ialah nama domain peringkat ke-11. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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