入力文字列が正しい ID カード、パスポート、または運転免許証番号の形式であるかどうかを確認するための PHP 正規表現

PHPz
リリース: 2023-06-24 18:04:01
オリジナル
1409 人が閲覧しました

多くの Web サイトでは、ユーザーは ID 番号、パスポート番号、運転免許証番号などの個人情報を入力する必要があります。ユーザーが誤ったデータを入力してデータの精度に影響を与えることを防ぐために、この情報の形式検証を実行することが非常に必要です。この記事では、PHP 正規表現を使用して、入力された文字列が ID カード、パスポート、または運転免許証番号の形式が正しいかどうかを確認する方法を紹介します。

  1. ID 番号の確認

ID 番号は 18 桁の文字列、または数字と文字の組み合わせで、最後の桁は数字または文字 X です。 。 ID 番号の構造は次のとおりです:

  • 最初の 6 桁は住所コード、
  • 次の 8 桁は生年月日コード、
  • 下4桁 シーケンスコードです。

正規表現を使用して ID 番号の形式を確認します。次のコードを使用できます。

function checkIDCard($id)
{
    if (!preg_match("/^d{17}[d|x]$|^d{15}$/i", $id)) {
        return false;
    }
    return true;
}
ログイン後にコピー

まず、この関数は preg_match 関数を使用して正規表現と一致します。正規表現では「|」(オプション)演算子が使用されており、2 つの検証方法があることを示しています。 1 つ目の方法では、ID 番号は 18 桁の数字、または数字と文字の組み合わせで、最後の 1 桁は数字または文字 X です。 2 番目の方法では、ID 番号は 15 桁です。

  1. パスポート番号の確認

パスポート番号は、通常 6 ~ 9 桁の数字と文字の文字列です。パスポート番号の構造は次のとおりです:

  • 最初の 2 桁は発行国コード (通常は英語の略語)、
  • 中央の数字は個人識別コードです。
  • ## 最後の数字はチェックコードです。
正規表現を使用してパスポート番号の形式を確認します。次のコードを使用できます:

function checkPassport($passport)
{
    if (!preg_match('/^[A-Za-z0-9]{6,9}$/', $passport)) {
        return false;
    }
    return true;
}
ログイン後にコピー

この関数は preg_match 関数を使用して正規表現と一致します。 "[]" (文字セット) 演算子は、任意の文字と一致するために正規表現で使用されます。ここでは数字と大文字と小文字のみが照合され、合計は 6 ~ 9 桁になります。

    運転免許証番号を確認する
運転免許証番号は数字と文字の文字列で、通常は 12 桁です。運転免許証番号の構造は次のとおりです:

    最初の桁は文字、
  • の中央の 4 桁は数字、
  • # の最後の 7 桁は次のとおりです。 ## は数字または文字の組み合わせです。
  • 正規表現を使用して、運転免許証番号の形式を確認します。次のコードを使用できます:
function checkDriverLicense($license)
{
    if (!preg_match('/^[A-Za-z][0-9]{4}[A-Za-z0-9]{7}$/', $license)) {
        return false;
    }
    return true;
}
ログイン後にコピー

この関数は、preg_match 関数を使用して正規表現と一致します。正規表現は、最初に文字と一致し、次に 4 つの数字と一致し、最後に 7 つの数字または文字の組み合わせと一致します。

概要

上記は、PHP 正規表現を使用して ID カード、パスポート、運転免許証番号の形式を確認する方法です。正規表現検証を実行する場合は、正規表現の構文と検証の種類に注意してください。不適切に使用すると、データが適切に検証されず、データが不正確になる可能性があります。

以上が入力文字列が正しい ID カード、パスポート、または運転免許証番号の形式であるかどうかを確認するための PHP 正規表現の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート