ホームページ >バックエンド開発 >Golang >Golangで正規表現を使用してIDカード番号の市外局番を確認する方法

Golangで正規表現を使用してIDカード番号の市外局番を確認する方法

PHPz
PHPzオリジナル
2023-06-25 08:39:061163ブラウズ

国家標準 GB 2260 では、ID カード番号の地域コードは、ID カード番号が発行される地域を指定します。 golang では、ID 番号の市外局番が仕様に準拠しているかどうかを正規表現を使用して検証できます。この記事では、golangで正規表現を使ってIDカード番号の市外局番を確認する方法を紹介します。

1. GB 2260 標準

GB 2260 は、行政区画の分類、番号付け、名前およびコードを規定する中国の国家標準です。このうち、ID カード番号の市外局番の規定は次のとおりです。

  • 最初の 2 桁は都道府県番号を表します
  • 真ん中の 2 桁は都市、地域を表しますまたは自治県の区画コード
  • 最後の桁はチェックコードで、現在は数字または文字コードの仕様です。
2. golang の正規表現

golang で正規表現を使用するには、正規表現ライブラリ regexp をインポートする必要があり、一致と置換に正規の正規表現構文を使用できます。抽出やその他の操作。

3. golang を使用して ID 番号の市外局番を確認する

GB 2260 標準に従って、ID 番号の市外局番のルールを導き出すことができます:

^1-9 {5}$

このうち、^ は文字列の先頭、$ は文字列の末尾を表し、[1-9] は最初の桁が 0 にならないことを表し、[ 0-9]{5} は次の 5 つを表します。数字は 0 ~ 9 の任意の数字です。

golang の正規表現ライブラリを使用して、ID 番号のエリア コー​​ドを検証する関数を作成できます。

import (
    "regexp"
)

func CheckIDAreaCode(code string) bool {
    reg := regexp.MustCompile("^[1-9][0-9]{5}$")
    return reg.MatchString(code)
}

上記のコードでは、まず regexp.MustCompile() を使用して正規のコードをコンパイルします。次に、MatchString() メソッドを使用して、受信文字列が正規表現のルールに準拠しているかどうかを判断します。一致が成功した場合は true を返し、それ以外の場合は false を返します。

4. 使用例

次に、例を使用して上記の関数が正しいかどうかを確認します:

fmt.Println(CheckIDAreaCode("110101")) // true
fmt.Println(CheckIDAreaCode("011010")) // false
fmt.Println(CheckIDAreaCode("1101")) // false
fmt.Println(CheckIDAreaCode("110101K")) // false

上記のコードでは、For 文字列を渡しました。ルールに準拠していない場合、出力結果はそれぞれ true と false に対応していることがわかります。

5. まとめ

この記事で紹介した方法により、ID番号の市外局番がgolangのルールに準拠しているかどうかを迅速かつ正確に検証することができます。実際の開発では、上記の方法に従って一般的な正規表現検証関数を記述して、コードの再利用とメンテナンスを容易にすることができます。

以上がGolangで正規表現を使用してIDカード番号の市外局番を確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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