ホームページ >バックエンド開発 >PHPチュートリアル >PHP 電子メール メールボックス Regular_PHP チュートリアル
php の通常のメール コードの分析については、 /^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0- 9]+)+[.][a-z]{2,3}([.][a-z]{2})?$/i;
CODE:
1. < ?php
2 を参照してください。 ]([a-z0-9]*[-_.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+) +[ .][a-z]{2,3}([.][a-z]{2})?$/i; ”,$email)){
3. echo 「あなたのメールアドレスは正しいです!」;}
4. else{
5. echo「もう一度お試しください!」;
6.
国際ドメイン名の形式は次のとおりです:
/content/i は大文字と小文字を区別しない正規表現を構成します;
^ 開始一致
$ end と一致
[a-z] 電子メールのプレフィックスは英語の文字で始まる必要があります
([a-z0-9]*[-_]?[a-z0-9]+)* および _a_2、aaa11、_1_a_2 と一致します。ただし、a1_、aaff_33a_、a__aa には一致しません。* は 0 以上を意味します。
* は 0 個以上の前の文字を表します。
[a-z0-9]* は 0 個以上の英字または数字に一致します。
[-_]? は 0 または 1 個の「-」に一致します。「-」は連続して出現できません
[a -z0-9]+ は 1 つ以上の英語の文字または数字に一致します。「-」を末尾として使用できないためです
@ @
([a-z0-9]*[- _]?[a-z0] が必要です-9]+)+ 上記の ([a-z0-9]*[-_]?[a-z0-9]+)* の説明を参照してください。ただし、空にすることはできません。+ は 1 つまたは複数を意味します。
[.] 特殊文字 (.) を通常の文字として扱います
[a-z]{2,3} 2 ~ 3 つの英文字 (通常は com または net など) と一致します。
([.][a-z]{2}) ? 0 または 1 [.][a-z]{2} (.cn など) .com.cn の最後の部分が通常 2 桁かどうかはわかりません。そうでない場合は、{2} を { に変更してください。開始単語数、終了単語数}
完璧な電子メール正規表現、詳細な説明付き、テストにご協力ください。 2. 文字列から電子メールを抽出します:
function getEmail($str) {
$pattern = "/([a-z0-9]*[-_.]?[a-z0-9] + )*@([a-z0-9]*[-_]?[a-z0-9]+)+[.][a-z]{2,3}([.][a-z]{2}) ? /i";
preg_match_all($pattern,$str,$emailArr);
return $emailArr[0];
}
$emailstr = "9999@qq.com.cn 私は Mivi の場所ではないので、 iid メーリング リスト : fuyongjie@163.com および hh@qq.com;.;;,fuyongjie.100@yahoo.com,fu-1999@sina.com";
$emailArr = getEmail($emailstr);
echo " print_r($emailArr);<BR>echo "
";
?>
次のように印刷します:
Array
(
[0] =>9999@qq.com.cn
[1] =>fuyongjie@163.com
[2] =>hh@qq.com
[3] =>fuyongjie.100@yahoo.com
[4] =>fu-1999@sina .com
)
3. 比較: 最初の部分の ^ と $ は 2 番目の部分の正規表現に含まれません。
http://www.bkjia.com/PHPjc/508302.html