ホームページ >バックエンド開発 >PHPチュートリアル >PHP正規表現を使用してISBN番号を確認する方法

PHP正規表現を使用してISBN番号を確認する方法

王林
王林オリジナル
2023-06-24 10:13:401543ブラウズ

書籍分野では、ISBN 番号は非常に重要な識別子です。正式名称は国際標準図書番号(International Standard Book Number)で、書籍を一意に識別するために使用されます。 ISBN 番号は、番号の正確性を確認するために使用できるチェック ディジットを含む 13 桁で構成されます。実際の開発では、ISBN 番号が仕様に準拠していることを確認する必要があることがよくあります。 PHP 正規表現は、ISBN 番号の形式を確認する便利な方法を提供します。

まず、ISBN 番号の構造を理解しましょう。前述したように、これは 13 桁で構成され、通常はハイフンで区切られた 3 組の数字として表されます。このうち、最初の 3 つの数字グループは国、出版社、本のタイトルを表し、各要素の間のハイフンはそれらを区切るために使用されます。最後の桁はチェック ディジットで、数値全体の正確性を確認するために使用されます。

PHP では、preg_match() 関数を使用して ISBN 番号を確認できます。この関数は、正規表現パターンを使用して文字列を照合し、照合結果を返します。以下は、13 桁の ISBN 番号を検証するための簡単な例です:

$isbn = '978-3-16-148410-0';
$pattern = '/^(d{3})-(d{1,5})-(d{1,7})-(d{1,6})-(d)$/';
if (preg_match($pattern, $isbn)) {
    echo "这是一个有效的ISBN号码。";
} else {
    echo "这不是一个有效的ISBN号码。";
}

上記のコードでは、まず 13 桁の ISBN 番号を定義し、この番号と一致する 13 桁の ISBN 番号を定義します。表現パターン。パターンは 5 つのグループで構成され、それぞれが ISBN 番号の要素と一致します。具体的には、最初のグループは最初の 3 つの数字に一致し、2 番目のグループは出版社と本のタイトルの数字に一致し、3 番目のグループは本のタイトルの数字に一致し、4 番目のグループは出版物の数に一致し、最後のグループは次の数字に一致します。チェックデジット。ハイフンはパターン内で明示的に指定されていることに注意してください。

次に、preg_match() 関数を使用して照合し、戻り値に基づいて照合が成功したかどうかを判断します。成功するとプロンプトメッセージが出力されます。

より厳密にするために、ISBN 番号を検証するためのパターンでより詳細なルールを指定することもできます。たとえば、ISBN 番号には数字のみを使用できます。より厳密な例を次に示します。

$isbn = '978-3-16-148410-0';
$pattern = '/^(97(8|9))(d{10})(d)$/';
if (preg_match($pattern, $isbn)) {
    echo "这是一个有效的ISBN号码。";
} else {
    echo "这不是一个有效的ISBN号码。";
}

この例では、より厳密なパターンを使用して ISBN 番号を照合します。このモードでは、番号に数字のみを使用できます。最初の 3 桁は 978 または 979 で、その後に 10 桁が続き、最後の桁はチェック デジットです。区切り文字のハイフンはオプションであるため省略していることに注意してください。この例はより厳密で、ISBN 番号が要件を満たしていない場合、照合は成功しません。

実際の開発では、実際のニーズに応じてモデルの厳密さを調整できます。オプションの区切り文字を使用したり、数字などに数字のみを強制的に使用したりできます。どのような状況であっても、PHP 正規表現を使用すると、ISBN 番号の形式を簡単に確認できます。

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

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