ホームページ  >  記事  >  バックエンド開発  >  golang で正規表現を使用して、入力が合法的な統一社会信用コードであるかどうかを確認する

golang で正規表現を使用して、入力が合法的な統一社会信用コードであるかどうかを確認する

WBOY
WBOYオリジナル
2023-06-24 08:10:541702ブラウズ

Golang 開発では、入力が法的に統一された社会信用コードであるかどうかを検証する必要がある場合があります。統一ソーシャルクレジットコードは、数字と英字で構成される 18 桁のコードであり、企業を識別するための固有のコードです。では、Golang では、正規表現を使用して、入力が合法的な統一社会信用コードであるかどうかを確認するにはどうすればよいでしょうか?この記事では、正規表現を使った検証方法を紹介します。

  1. 統一社会信用コード形式

統一社会信用コードは 18 桁の数字と大文字で構成され、次の 3 つの部分に分けることができます:

  • 最初の部分は数字または大文字で構成される登録管理部門コードです;
  • 2 番目の部分は数字または大文字で構成される機関カテゴリコードです;
  • 3 番目の部分はは登録管理機関の行政部門コードは数字で構成されます;

以下は統一社会信用コードの形式です:

ABCDEFGHJKLMNPQRTUWXY0123456789

最初の桁は登録管理部門コード、9 は工業および商業部門を表します。

2桁目は組織分類コードで、1は政府機関、2は公的機関、3は企業、9はその他です。

3桁目から8桁目は行政区画コードで、登録管理機関が所在する行政地域(省、自治区、中央直轄市など)を指します。

9桁目から17桁目は組織コード、つまり企業組織コードです。

18 桁目はチェック コードで、入力された統一社会信用コードが合法であるかどうかを確認するために使用されます。

  1. Golang 正規表現

Golang では、正規表現のマッチングに regexp パッケージ内の関数を使用できます。 regexp パッケージの 3 つの主な関数は次のとおりです。

  • MatchString(pattern string, s string) (bool, error): 文字列 s が正規表現パターンに準拠するかどうかを照合するために使用されます。
  • Compile(expr string) (*Regexp, error): 文字列 expr を Regexp タイプの正規表現にコンパイルするために使用されます。
  • MustCompile(expr string) *Regexp: Compile 関数と同じ効果がありますが、コンパイル エラーが発生するとパニックになります。

正規表現を使用して、統一社会信用コードを検証します。最初にルールを文字列形式で表現し、次に Compile または MustCompile 関数を使用して正規表現型にコンパイルし、最後に MatchString を使用します。入力文字と一致する関数。

  1. 正規表現を使用して統合社会信用コードを検証する

次は、正規表現を使用して統合社会信用コードを検証するサンプル プログラムです:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    // 编译正则表达式
    re := regexp.MustCompile(`^[A-Z0-9]{18}$`)

    // 输入待验证的统一社会信用代码
    var input string
    fmt.Println("请输入统一社会信用代码:")
    fmt.Scanln(&input)

    // 验证输入是否符合规则
    if re.MatchString(input) {
        fmt.Println("输入的统一社会信用代码合法")
    } else {
        fmt.Println("输入的统一社会信用代码不合法")
    }
}

上記のプログラム例では、最初に ^[A-Z0-9]{18}$ 正規表現を使用して、統一社会信用コードを検証するための正規表現をコンパイルします。ここで、 ^ は先頭を表し、$ は末尾を表し、[A-Z0-9] は大文字と数字を表し、{18} は長さを表します18文字の。次に、プログラムはユーザーに検証対象の統一社会信用コードの入力を求め、MatchString 関数を使用して検証し、ルールを満たしていれば「入力された統一社会信用コードは正当です」と出力し、そうでない場合は出力します。 「入力された統一社会信用コードは違法です。」

  1. 概要

Golang 開発では、入力検証に正規表現を使用するのが一般的な方法です。統一社会信用コードの検証では、正規表現を使用してその形式が正しいかどうかを検証できます。正規表現を記述する場合は、文字の種類や長さなどの要件に注意し、ルールに従って記述する必要があります。照合に MatchString 関数を使用する場合、正規表現を Regexp タイプのオブジェクトにコンパイルし、そのオブジェクトを照合に使用する必要があります。入力検証に正規表現を使用すると、入力データが規制に準拠していることを効果的に確認できるため、プログラムの安定性とセキュリティが向上します。

以上がgolang で正規表現を使用して、入力が合法的な統一社会信用コードであるかどうかを確認するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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