ホームページ >バックエンド開発 >Golang >Golang で正規表現を使用して ISBN 番号の正当性を検証する方法

Golang で正規表現を使用して ISBN 番号の正当性を検証する方法

PHPz
PHPzオリジナル
2023-06-24 11:50:341064ブラウズ

ISBN (International Standard Book Number) は、書籍を識別するために使用される数値コードです。これは 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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。