この記事の例で確認が必要な内容:メールアドレス、URLアドレス、電話番号、確認方法はご参考までに、具体的な内容は以下の通りです
1.メールアドレス
<?php /* 校验邮件地址*/ function checkMail($email) { //用户名,由“\w”格式字符、“-”或“.”组成 $email_name= "\w|(\w[-.\w]*\w)"; //域名中的第一段,规则和用户名类似,不包括点号“.” $code_at= "@"; $per_domain= "\w|(\w[-\w]*\w)"; //域名中间的部分,至多两段 $mid_domain= "(\." .$per_domain. "){0,2}"; //域名的最后一段,只能为“.com”、“.org”或“.net” $end_domain= "(\.(com|net|org))"; $rs= preg_match( "/^{$email_name}@{$per_domain}{$mid_domain}{$end_domain}$/", $email ); return (bool)$rs; } //测试,下面均返回成功 var_dump( checkMail("root@localhost") ); var_dump( checkMail("Frank.Roulan@esun.edu.org") ); var_dump( checkMail("Tom.024-1234@x-power_1980.mail-address.com") ); ?>
2、URLアドレスの確認
<?php /* 校验URL地址*/ function checkDomain($domain) { return ereg("^(http|ftp)s? ://(www\.)?.+(com|net|org)$", $domain); } $rs= checkDomain("www.taodoor.com");//返回假 $rs= checkDomain("http://www.taodoor.com");//返回真 ?>
3、電話番号
<?php /* 校验电话号码*/ function checkTelno($tel) { //去掉多余的分隔符 $tel= ereg_replace("[\(\)\. -]", "", $tel); //仅包含数字,至少应为一个6位的电话号(即没有区号) if(ereg("^\d+$", $tel)) { return true; }else{ return false; } } $rs= checkTelno("(086)-0411-12345678");//返回真 ?>
4、郵便番号の確認
<?php /* 校验邮政编码*/ function checkZipcode($code) { //去掉多余的分隔符 $code = preg_replace("/[\. -]/", "", $code); //包含一个6位的邮政编码 if(preg_match("/^\d{6}$/", $code)) { return true; }else{ return false; } } $rs= checkZipCode("123456");//返回真 ?>
PHPプログラミング。
上記は、PHP の正規表現検証 (電子メール アドレス、URL アドレス、電話番号、郵便番号) を、関連する内容も含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。