Golang 開発では、入力が法的に統一された社会信用コードであるかどうかを検証する必要がある場合があります。統一ソーシャルクレジットコードは、数字と英字で構成される 18 桁のコードであり、企業を識別するための固有のコードです。では、Golang では、正規表現を使用して、入力が合法的な統一社会信用コードであるかどうかを確認するにはどうすればよいでしょうか?この記事では、正規表現を使った検証方法を紹介します。
統一社会信用コードは 18 桁の数字と大文字で構成され、次の 3 つの部分に分けることができます:
以下は統一社会信用コードの形式です:
ABCDEFGHJKLMNPQRTUWXY0123456789
最初の桁は登録管理部門コード、9 は工業および商業部門を表します。
2桁目は組織分類コードで、1は政府機関、2は公的機関、3は企業、9はその他です。
3桁目から8桁目は行政区画コードで、登録管理機関が所在する行政地域(省、自治区、中央直轄市など)を指します。
9桁目から17桁目は組織コード、つまり企業組織コードです。
18 桁目はチェック コードで、入力された統一社会信用コードが合法であるかどうかを確認するために使用されます。
Golang では、正規表現のマッチングに regexp パッケージ内の関数を使用できます。 regexp パッケージの 3 つの主な関数は次のとおりです。
正規表現を使用して、統一社会信用コードを検証します。最初にルールを文字列形式で表現し、次に Compile または MustCompile 関数を使用して正規表現型にコンパイルし、最後に MatchString を使用します。入力文字と一致する関数。
次は、正規表現を使用して統合社会信用コードを検証するサンプル プログラムです:
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 関数を使用して検証し、ルールを満たしていれば「入力された統一社会信用コードは正当です」と出力し、そうでない場合は出力します。 「入力された統一社会信用コードは違法です。」
Golang 開発では、入力検証に正規表現を使用するのが一般的な方法です。統一社会信用コードの検証では、正規表現を使用してその形式が正しいかどうかを検証できます。正規表現を記述する場合は、文字の種類や長さなどの要件に注意し、ルールに従って記述する必要があります。照合に MatchString 関数を使用する場合、正規表現を Regexp タイプのオブジェクトにコンパイルし、そのオブジェクトを照合に使用する必要があります。入力検証に正規表現を使用すると、入力データが規制に準拠していることを効果的に確認できるため、プログラムの安定性とセキュリティが向上します。
以上がgolang で正規表現を使用して、入力が合法的な統一社会信用コードであるかどうかを確認するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。