ホームページ > バックエンド開発 > PHPチュートリアル > PHP_PHP チュートリアルでよく使用される電子メール検証ステートメントの説明

PHP_PHP チュートリアルでよく使用される電子メール検証ステートメントの説明

WBOY
リリース: 2016-07-15 13:22:53
オリジナル
913 人が閲覧しました

PHP を注意深く勉強したことのある人なら誰でも、電子メール検証に関する次のステートメントを知っているはずですが、これを実際に理解できる人は多くありません:
if (eregi("^[_.0-9a -z-]+@ ([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$email)) {
echo "あなたのメールは予備検査に合格しました";
}
? >
この文では、最初にエレギ関数が適用されていますが、これは非常に理解しやすいです。この本を探せば説明が載っています:
構文: int ereg(string pattern, string string, array [regs]);
戻り値: integer/array
この関数はパターンの規則を使用して解析および比較します。文字列文字列。
比較結果によって返される値は、配列パラメータ regs に配置されます。regs[0] の内容は、規則に準拠する最初の文字列です。regs[2] は 2 番目の文字列です。ルールに準拠した文字列など。パラメータ regs を省略した場合は、単純に比較され、見つかった場合は戻り値が true になります。
理解しにくいのは、前の正規表現です: ^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+ [a-z]{ 2,3}$
この正規表現では、「+」は前の文字列が 1 つ以上連続して出現することを意味し、「^」は次の文字列が先頭に出現する必要があることを意味し、「$」は前の文字列が 1 つ以上連続して出現することを意味します。最後;
"." も "." で、"" はエスケープ文字であり、前の文字列が 2 ~ 3 回連続して出現する可能性があることを意味します。 「()」は、含まれるコンテンツがターゲット オブジェクトにも出現する必要があることを示します。 「[_.0-9a-z-]」は、「_」、「.」、「-」に含まれる任意の文字、a から z の範囲の文字、および 0 から 9 の範囲の数字を意味します。このように、この正規表現は次のように変換できます:
「次の文字が先頭になければなりません (^)」、「文字は、a から z まで、「_」、「.」、「-」に含まれている必要があります。 0 ~ 9 の範囲の文字、数字 ([_.0-9a-z-])"、"前の文字が少なくとも 1 回出現する (+)"、@、"文字列は a から Starts までの文字列で構成されますz の範囲の文字、0 ~ 9 の範囲の数字、その後に「-」に含まれる少なくとも 1 つの文字、a ~ z の範囲の任意の文字、0 ~ 9 の範囲の任意の数字、で終わる文字. (([0-9a-z][0-9a-z-]+.))"、"前の文字が少なくとも 1 回出現します (+)"、"a から z までの文字は 2 ~ 3 回出現し、 ([a-z]{2,3}$)」
これは複雑ですよね、だからこそ人々は正規表現を使用します。



http://www.bkjia.com/PHPjc/446913.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446913.html技術記事 PHP をよく勉強した人なら誰でも、eamil 検証のための次のステートメントを知っているはずだと思いますが、これを実際に理解できる人は多くありません。 z][0-9a-z-]+.)+[a-z]{2,3}...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート