Bagaimana untuk mengesahkan operator nombor telefon bimbit menggunakan ungkapan biasa dalam golang

WBOY
Lepaskan: 2023-06-24 08:17:49
asal
1086 orang telah melayarinya

Apabila membangunkan program, selalunya perlu untuk mengesahkan sama ada nombor telefon mudah alih yang dimasukkan adalah sah dan pemilik mana nombor telefon mudah alih itu milik. Proses ini boleh dicapai dengan mudah menggunakan ungkapan biasa dalam golang. Artikel ini akan memperkenalkan cara menggunakan ungkapan biasa untuk mengesahkan operator nombor telefon mudah alih di golang.

1. Sahkan sama ada nombor telefon bimbit itu sah

Dalam golang, anda boleh menggunakan ungkapan biasa untuk mengesahkan sama ada nombor telefon bimbit itu sah. Berikut ialah contoh kod:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    // 手机号码正则表达式
    mobileExp := `^(1[3-9]d{9})$`

    // 编译正则表达式
    mobileReg := regexp.MustCompile(mobileExp)

    // 测试手机号码
    mobile := "13212345678"
    if mobileReg.MatchString(mobile) {
        fmt.Printf("手机号码 %s 合法
", mobile)
    } else {
        fmt.Printf("手机号码 %s 不合法
", mobile)
    }
}
Salin selepas log masuk

Dalam kod di atas, ungkapan biasa untuk nombor telefon mudah alih ditakrifkan dahulu, dan kemudian kaedah regexp.MustCompile() digunakan untuk menyusunnya menjadi objek ungkapan biasa. Akhir sekali, gunakan kaedah MatchString() untuk mengesahkan sama ada nombor telefon mudah alih itu sah. Jika pengesahan diluluskan, "Nombor telefon mudah alih xxx adalah sah" dikeluarkan, jika tidak "Nombor telefon mudah alih xxx adalah haram" dikeluarkan.

Dalam kod di atas, ungkapan biasa nombor telefon mudah alih ialah ^(1[3-9]d{9})$, yang mewakili 11 digit bermula dengan 1. Antaranya, digit kedua ialah nombor antara 3 dan 9, dan 10 digit berikut boleh menjadi sebarang nombor. Ungkapan biasa boleh diubah suai mengikut keperluan untuk mengesahkan nombor telefon mudah alih dalam format tertentu.

2. Sahkan pengendali nombor telefon bimbit

Di golang, anda boleh menggunakan segmen nombor telefon mudah alih China Telecom, China Unicom dan China Mobile untuk menentukan pengendali telefon mudah alih nombor.

Julat nombor telefon mudah alih China Telecom ialah: 133, 149, 153, 173, 177, 180, 181, 189, 199

Julat nombor telefon mudah alih China Unicom ialah: 131,, 130; 132, 145, 155, 156, 166, 175, 176, 185, 186

Julat nombor telefon mudah alih China Mobile ialah: 134, 135, 136, 137, 130, 138, 147, 139; 151, 152, 157, 158, 159, 165, 172, 178, 182, 183, 184, 187, 188, 198.

Berikut ialah contoh kod yang boleh mengeluarkan maklumat yang sepadan mengikut operator yang sepadan dengan nombor telefon mudah alih:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    // 手机号码正则表达式
    mobileExp := `^(1[3-9]d{9})$`

    // 编译正则表达式
    mobileReg := regexp.MustCompile(mobileExp)

    // 测试手机号码
    mobile := "13412345678"
    if mobileReg.MatchString(mobile) {
        if mobile[0:3] == "133" || mobile[0:3] == "149" || mobile[0:3] == "153" || mobile[0:3] == "173" || mobile[0:3] == "177" || mobile[0:3] == "180" || mobile[0:3] == "181" || mobile[0:3] == "189" || mobile[0:3] == "199" {
            fmt.Printf("手机号码 %s 是中国电信", mobile)
        } else if mobile[0:3] == "130" || mobile[0:3] == "131" || mobile[0:3] == "132" || mobile[0:3] == "145" || mobile[0:3] == "155" || mobile[0:3] == "156" || mobile[0:3] == "166" || mobile[0:3] == "175" || mobile[0:3] == "176" || mobile[0:3] == "185" || mobile[0:3] == "186" {
            fmt.Printf("手机号码 %s 是中国联通", mobile)
        } else if mobile[0:3] == "134" || mobile[0:3] == "135" || mobile[0:3] == "136" || mobile[0:3] == "137" || mobile[0:3] == "138" || mobile[0:3] == "139" || mobile[0:3] == "147" || mobile[0:3] == "148" || mobile[0:3] == "150" || mobile[0:3] == "151" || mobile[0:3] == "152" || mobile[0:3] == "157" || mobile[0:3] == "158" || mobile[0:3] == "159" || mobile[0:3] == "165" || mobile[0:3] == "172" || mobile[0:3] == "178" || mobile[0:3] == "182" || mobile[0:3] == "183" || mobile[0:3] == "184" || mobile[0:3] == "187" || mobile[0:3] == "188" || mobile[0:3] == "198" {
            fmt.Printf("手机号码 %s 是中国移动", mobile)
        } else {
            fmt.Printf("手机号码 %s 不是中国电信、中国联通或中国移动", mobile)
        }
    } else {
        fmt.Printf("手机号码 %s 不合法
", mobile)
    }
}
Salin selepas log masuk

Dalam kod di atas, sahkan dahulu sama ada nombor telefon bimbit itu sah . Jika nombor telefon bimbit itu sah, maklumat yang sepadan akan dikeluarkan berdasarkan 3 digit pertama yang sepadan dengan nombor telefon bimbit.

Ringkasnya, dengan menggunakan ungkapan biasa dalam golang, pengesahan nombor telefon mudah alih dan pertimbangan pengendali boleh dicapai dengan mudah. Dalam pembangunan sebenar, kod boleh dioptimumkan mengikut keperluan, seperti menyimpan ungkapan biasa dan segmen nombor telefon mudah alih setiap operator sebagai pembolehubah untuk mencapai pengesahan dan pertimbangan yang lebih fleksibel.

Atas ialah kandungan terperinci Bagaimana untuk mengesahkan operator nombor telefon bimbit 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