ホームページ > バックエンド開発 > PHPの問題 > PHPで正規表現を使用してIDカードのみに一致させる方法

PHPで正規表現を使用してIDカードのみに一致させる方法

DDD
リリース: 2023-07-10 16:15:37
オリジナル
1877 人が閲覧しました

php の ID カードのみに一致する正規表現は「/\b\d{17}[\dX]\b/」です。使用方法: 1. ID 番号を含む文字列変数を定義します。「$」 string」の場合、正規表現は変数「$pattern」に格納されます; 2. 「preg_match()」関数を使用して文字列を照合します; 3. 「if」ステートメントを使用してID番号が一致するかどうかを確認します; 4. ID 番号が一致した場合は、「echo」ステートメントを使用して、一致した ID 番号を出力します。

PHPで正規表現を使用してIDカードのみに一致させる方法

#この記事の動作環境: Windows 10 システム、php8.1.3 バージョン、dell g3 コンピューター。

正規表現を使用して ID 番号を照合する場合は、次の手順を試して問題を解決できます。

ID 番号の形式を決定します。ID 番号の形式は異なる場合があります。あなたがいる国または地域によって異なります。中国では、ID 番号は通常 18 桁で構成され、最後の桁は数字または文字 X (10 を表すために使用) になります。

正規表現パターンの作成: ID 番号の形式に基づいて、ID 番号と一致する正規表現パターンを作成します。中国語の ID 番号の場合、正規表現パターンは

/\b\d{17}[\dX]\b/ になります。

\b は、ID 番号全体が確実に一致するように単語の境界を一致させることを意味します。

\d は任意の数値に一致することを意味します。

{17} は、前の要素 (\d) が 17 回繰り返されることを意味します。

[\dX] は、任意の数字または文字 X と一致することを意味します。

\b ID 番号全体が一致することを再度確認するために使用されます。

PHP での正規表現の使用: 文字列内の ID 番号を照合したいとします。次のようなコードを記述できます:

$string="这是一个身份证号码:123456789012345678X";
$pattern='/\b\d{17}[\dX]\b/';
if(preg_match($pattern,$string,$matches)){
//进一步处理匹配到的身份证号码
echo"匹配到的身份证号码:".$matches[0];
}else{
echo"未找到匹配的身份证号码";
}
ログイン後にコピー

このコードは正規表現を使用した照合です ID の例番号。このコードの機能と手順をステップごとに説明します。

ステップ 1: 文字列と正規表現パターンを定義します。

は、ID 番号を含む文字を定義します。文字列変数 $string。正規表現パターンは $pattern 変数に保存され、ID 番号を照合するために使用されます。

ステップ 2: 正規表現一致の実行

preg_match() 関数を使用して文字列を一致させます。この関数は、正規表現パターン、検索する文字列、および一致結果を保存するオプションの変数の 3 つのパラメータを受け入れます。

ステップ 3: ID 番号が一致するかどうかを確認します。

ID 番号が一致するかどうかを if ステートメントで確認します。一致が成功した場合は次のステップが処理され、そうでない場合は else ステートメントのコードが実行されます。

ステップ 4: 一致した ID 番号を処理する

ID 番号が一致した場合は、echo ステートメントを使用して、一致した ID 番号を出力します。

これは単なる単純な例であり、具体的な実装は特定のニーズとコード アーキテクチャによって異なることに注意してください。

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

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