首頁 > 後端開發 > Golang > 主體

如何在golang中使用正規表示式驗證ISBN號碼的合法性

PHPz
發布: 2023-06-24 11:50:34
原創
1039 人瀏覽過

ISBN(國際標準書號)是用來識別圖書的數字代碼。它由13位數字組成,通常以“978”或“979”開頭。在golang中,可以使用正規表示式來驗證ISBN號碼的合法性。本文將介紹如何使用正規表示式進行ISBN號碼的驗證。

首先,在golang中使用正規表示式需要引入regexp套件。 regexp套件提供了一個正規表示式引擎,可以用來匹配和搜尋字串。接下來,定義一個ISBN號碼的正規表示式:

^[0-9]{13}$
登入後複製

這個正規表示式表示一串由13個數字組成的字串。 ^表示字串的開始,$表示字串的結束。 [0-9]表示數字,{13}表示該數字連續出現13次。

下面是一個範例程式碼,示範如何使用正規表示式驗證ISBN號碼的合法性:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    // 定义ISBN号码的正则表达式
    isbnRegex := regexp.MustCompile(`^[0-9]{13}$`)

    // 测试数据
    testCases := []struct {
        input    string
        expected bool
    }{
        {"9780134190440", true},
        {"978-013-419-044-0", false},
        {"1234567890123", true},
        {"1234567890123456", false},
    }

    // 循环测试数据,进行验证
    for _, testCase := range testCases {
        actual := isbnRegex.MatchString(testCase.input)
        fmt.Printf("input: %s, expected: %t, actual: %t
", testCase.input, testCase.expected, actual)
    }
}
登入後複製

在這個範例中,我們首先定義了一個ISBN號碼的正規表示式,並使用Compile方法將其編譯。接下來,定義了一組測試數據,包括ISBN號碼和期望的驗證結果。最後,使用MatchString方法驗證ISBN號碼的合法性,並輸出驗證結果。

運行程式碼,可以得到以下輸出:

input: 9780134190440, expected: true, actual: true
input: 978-013-419-044-0, expected: false, actual: false
input: 1234567890123, expected: true, actual: true
input: 1234567890123456, expected: false, actual: false
登入後複製

從輸出結果可以看出,使用正規表示式驗證ISBN號碼的合法性是非常簡單的。

總結來說,在golang中使用正規表示式驗證ISBN號碼的合法性只需要定義符合格式的正規表示式並使用MatchString方法即可。透過這種方法,可以方便地對ISBN號碼進行驗證。

以上是如何在golang中使用正規表示式驗證ISBN號碼的合法性的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板