Home > php教程 > php手册 > body text

正则表达式的Wed验证应用(40),正则表达式wed

WBOY
Release: 2016-06-13 09:02:49
Original
1010 people have browsed it

正则表达式的Wed验证应用(40),正则表达式wed

电子邮件地址的校验

<?<span>php
</span><span>/*</span><span> 校验邮件地址</span><span>*/</span><span>
function checkMail($email) {
</span><span>//</span><span>用户名,由&ldquo;\w&rdquo;格式字符、&ldquo;-&rdquo;或&ldquo;.&rdquo;组成</span>
$email_name= <span>"</span><span>\w|(\w[-.\w]*\w)</span><span>"</span><span>;
</span><span>//</span><span>域名中的第一段,规则和用户名类似,不包括点号&ldquo;.&rdquo;</span>
$code_at= <span>"</span><span>@</span><span>"</span><span>;
$per_domain</span>= <span>"</span><span>\w|(\w[-\w]*\w)</span><span>"</span><span>;
</span><span>//</span><span>域名中间的部分,至多两段</span>
$mid_domain= <span>"</span><span>(\.</span><span>"</span> .$per_domain. <span>"</span><span>){0,2}</span><span>"</span><span>;
</span><span>//</span><span>域名的最后一段,只能为&ldquo;.com&rdquo;、&ldquo;.org&rdquo;或&ldquo;.net&rdquo;</span>
$end_domain= <span>"</span><span>(\.(com|net|org))</span><span>"</span><span>;
$rs</span>=<span> preg_match(
</span><span>"</span><span>/^{$email_name}@{$per_domain}{$mid_domain}{$end_domain}$/</span><span>"</span><span>,
$email
);
</span><span>return</span> (<span>bool</span><span>)$rs;
}
</span><span>//</span><span>测试,下面均返回成功</span>
var_dump( checkMail(<span>"</span><span>root@localhost</span><span>"</span><span>) );
var_dump( checkMail(</span><span>"</span><span>Frank.Roulan@esun.edu.org</span><span>"</span><span>) );
var_dump( checkMail(</span><span>"</span><span>Tom.024-1234@x-power_1980.mail-address.com</span><span>"</span><span>) );
</span>?>
Copy after login

URL地址的校验

<?<span>php
</span><span>/*</span><span> 校验URL地址</span><span>*/</span><span>
function checkDomain($domain)
{
</span><span>return</span> ereg(<span>"</span><span>^(http|ftp)s? ://(www\.)?.+(com|net|org)$</span><span>"</span><span>, $domain);
}
$rs</span>= checkDomain(<span>"</span><span>www.taodoor.com</span><span>"</span>);<span>//</span><span>返回假</span>
$rs= checkDomain(<span>"</span><span>http://www.taodoor.com</span><span>"</span>);<span>//</span><span>返回真</span>
?>
Copy after login

电话号码

<?<span>php
</span><span>/*</span><span> 校验电话号码</span><span>*/</span><span>
function checkTelno($tel)
{
</span><span>//</span><span>去掉多余的分隔符</span>
$tel= ereg_replace(<span>"</span><span>[\(\)\. -]</span><span>"</span>, <span>""</span><span>, $tel);
</span><span>//</span><span>仅包含数字,至少应为一个6位的电话号(即没有区号)</span>
<span>if</span>(ereg(<span>"</span><span>^\d+$</span><span>"</span><span>, $tel))
{
</span><span>return</span> <span>true</span><span>;
}</span><span>else</span><span>{
</span><span>return</span> <span>false</span><span>;
}
}
$rs</span>= checkTelno(<span>"</span><span>(086)-0411-12345678</span><span>"</span>);<span>//</span><span>返回真</span>
?>
Copy after login

邮政编码的校验

<?<span>php
</span><span>/*</span><span> 校验邮政编码</span><span>*/</span><span>
function checkZipcode($code)
{
</span><span>//</span><span>去掉多余的分隔符</span>
$code = preg_replace(<span>"</span><span>/[\. -]/</span><span>"</span>, <span>""</span><span>, $code);
</span><span>//</span><span>包含一个6位的邮政编码</span>
<span>if</span>(preg_match(<span>"</span><span>/^\d{6}$/</span><span>"</span><span>, $code))
{
</span><span>return</span> <span>true</span><span>;
}</span><span>else</span><span>{
</span><span>return</span> <span>false</span><span>;
}
}
$rs</span>= checkZipCode(<span>"</span><span>123456</span><span>"</span>);<span>//</span><span>返回真</span>
?>
Copy after login

 

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template