当前位置: 首页 > 编程笔记 >

php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)

娄鹤轩
2023-03-14
本文向大家介绍php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码),包括了php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)的使用技巧和注意事项,需要的朋友参考一下

本文实例需要验证的内容:邮件地址、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程序设计有所帮助。

 类似资料:
  • 问题内容: 有人可以向我解释这个Java Regex吗? 此正则表达式用于验证 电子邮件地址 。 问题答案: 如今,验证电子邮件地址被认为是一种不好的做法(停止使用regex验证电子邮件地址),尤其是使用问题中的表达式时。例如,这是一个更完整的表达式。 至于此表达式,我们将其分为几部分: 匹配字符串的开头 匹配列表中的至少一个字符 非捕获(请参阅backreference)组,可以重复0..n次,

  • 本文向大家介绍js正则表达式验证邮件地址,包括了js正则表达式验证邮件地址的使用技巧和注意事项,需要的朋友参考一下 我们最经常遇到的验证,就是电子邮件地址验证。网站上常见。各种网页脚本也都常用“正则表达式”(regular expression)对我们输入的电子邮件地址进行验证,判断是否合法。有的还能分解出用户名和域名。现在用JavaScript语言实现一下电子邮件地址验证程序,用的是JavaSc

  • 问题内容: 多年来,我慢慢地开发了一个正则表达式,假设它们不使用IP地址作为服务器部件,则可以正确验证MOST电子邮件地址。 我在几个PHP程序中使用了它,并且大多数时候都可以使用。但是,有时会遇到某个使用它的站点出现问题的人与我联系,最终我不得不进行一些调整(最近我意识到我不允许使用4个字符的TLD)。 您已经或看到的用于验证电子邮件的最佳正则表达式是什么? 我已经看到了几种使用使用几个较短表达

  • 需要验证电子邮件地址与单个域级别或多级域。(实际上域级别<=4) null null 在线正则表达式:https://regex101.com/r/7sxs1z/1

  • 我需要一个正则表达式,将接受格式良好的电子邮件在几种格式(见下文),将在一个逗号分隔的列表中输入。我有基本的电子邮件地址验证正则表达式, 它可以处理测试用例A和B,但不能处理其他。我也试过了 它能够处理A、B和C,但只验证了每个测试用例D和E中的第一个电子邮件地址。我甚至还没有开始测试格式3的正则表达式。 tl;dr需要一个正则表达式来验证电子邮件地址1、2和3。 测试正则表达式的好网站:在线Ja

  • 在搜索用于电子邮件地址验证的正则表达式时,我遇到了这个页面:http://www.regular-expressions.info/email.html.我无法理解它。 它表示:\b[A-Z0-9._%-]@(?[A-Z0-9-]。[A-Z]{2,4}\b将匹配john@server.department.company.com但不是john@aol...com. 你能详细解释一下(?:[A-Z0

  • 使用 filter_var() 函数 Web 应用可能需要做的一件常见任务是检测用户是否输入了一个有效的邮件地址。毫无疑问你可以在网上找到一些声称可以解决该问题的复杂的正则表达式,但是最简单的方法是使用 PHP 的内建 filter_val() 函数。 示例 <?php filter_var('sgamgee@example.com', FILTER_VALIDATE_EMAIL); //Retu

  • 它工作得很好,但是当我给出这样的值时,它也返回true..这怎么解决?