Heim  >  Artikel  >  Backend-Entwicklung  >  So überprüfen Sie den Mobilfunkanbieter mithilfe eines regulären Ausdrucks in Golang

So überprüfen Sie den Mobilfunkanbieter mithilfe eines regulären Ausdrucks in Golang

WBOY
WBOYOriginal
2023-06-24 08:17:491018Durchsuche

Bei der Entwicklung eines Programms muss häufig überprüft werden, ob die eingegebene Mobiltelefonnummer legal ist und zu welchem ​​​​Betreiber die Mobiltelefonnummer gehört. Dieser Prozess kann leicht mithilfe regulärer Ausdrücke in Golang erreicht werden. In diesem Artikel wird erläutert, wie Sie mithilfe regulärer Ausdrücke Mobiltelefonnummernbetreiber in Golang überprüfen.

1. Überprüfen Sie, ob die Mobiltelefonnummer legal ist.

In Golang können Sie reguläre Ausdrücke verwenden, um zu überprüfen, ob die Mobiltelefonnummer legal ist. Das Folgende ist ein Beispielcode:

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)
    }
}

Im obigen Code wird zunächst ein regulärer Ausdruck für eine Mobiltelefonnummer definiert und dann wird die Methode regexp.MustCompile() verwendet, um ihn in einen zu kompilieren reguläres Ausdrucksobjekt. Verwenden Sie abschließend die Methode MatchString(), um zu überprüfen, ob die Mobiltelefonnummer legal ist. Bei bestandener Verifizierung wird „Mobiltelefonnummer xxx ist legal“ ausgegeben, andernfalls wird „Mobiltelefonnummer xxx ist illegal“ ausgegeben. regexp.MustCompile()方法将其编译为正则表达式对象。最后使用MatchString()方法验证手机号码是否合法。如果验证通过,则输出“手机号码 xxx 合法”,否则输出“手机号码 xxx 不合法”。

在上述代码中,手机号码的正则表达式为^(1[3-9]d{9})$

Im obigen Code lautet der reguläre Ausdruck der Mobiltelefonnummer ^(1[3-9]d{9})$, was eine 11-stellige Zahl darstellt, die mit 1 beginnt. Dabei ist die zweite Ziffer eine Zahl zwischen 3 und 9, und die folgenden 10 Ziffern können eine beliebige Zahl sein. Der reguläre Ausdruck kann nach Bedarf geändert werden, um Mobiltelefonnummern in einem bestimmten Format zu validieren.

2. Überprüfen Sie den Betreiber der Mobiltelefonnummer

In Golang können Sie die Mobiltelefonnummernsegmente von China Telecom, China Unicom und China Mobile verwenden, um den Betreiber der Mobiltelefonnummer zu ermitteln.

Die Mobiltelefonnummernbereiche von China Telecom sind: 133, 149, 153, 173, 177, 180, 181, 189, 199;

Die Mobiltelefonnummernbereiche von China Unicom sind: 130, 131, 132, 145, 155, 156, 166, 175, 176, 185, 186;

Die Mobiltelefonnummernbereiche von China Mobile sind: 134, 135, 136, 137, 138, 139, 147, 148, 150, 151, 152, 157, 158, 159, 165, 172, 178, 182, 183, 184, 187, 188, 198.

Das Folgende ist ein Beispielcode, der die entsprechenden Informationen entsprechend dem der Mobiltelefonnummer entsprechenden Betreiber ausgeben kann:

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)
    }
}

Überprüfen Sie im obigen Code zunächst, ob die Mobiltelefonnummer legal ist. Wenn die Mobiltelefonnummer legal ist, werden die entsprechenden Informationen basierend auf den ersten 3 Ziffern ausgegeben, die der Mobiltelefonnummer entsprechen.

Zusammenfassend lässt sich sagen, dass durch die Verwendung regulärer Ausdrücke in Golang die Überprüfung der Mobiltelefonnummer und die Beurteilung des Betreibers leicht erreicht werden können. In der tatsächlichen Entwicklung kann der Code nach Bedarf optimiert werden, z. B. durch das Speichern regulärer Ausdrücke und der Mobiltelefonnummernsegmente jedes Betreibers als Variablen, um eine flexiblere Überprüfung und Beurteilung zu erreichen. 🎜

Das obige ist der detaillierte Inhalt vonSo überprüfen Sie den Mobilfunkanbieter mithilfe eines regulären Ausdrucks in Golang. 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