php表单习惯用的正则表达式


Posted in PHP onOctober 11, 2017

php表单常用正则表达式,代码如下所示:

function is_email($str){ 
//检验email 
return preg_match("/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/", $str); 
} 
function is_url($str){ 
//检验网址 
return preg_match("/^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"]) 
*$/", $str); 
} 
function is_qq($str){ 
//检验qq 
return preg_match("/^[1-9]\d{4,8}$/", $str); 
} 
function is_zip($str){ 
//检验邮编 
return preg_match("/^[1-9]\d{5}$/", $str); 
} 
function is_idcard($str){ 
//检验身份证 
return preg_match("/^\d{15}(\d{2}[A-Za-z0-9])?$/", $str); 
} 
function is_chinese($str){ 
检验是否是中文 
return ereg("^[".chr(0xa1)."-".chr(0xff)."]+$",$str); 
} 
function is_english($str){ 
//检验是否是英文 
return preg_match("/^[A-Za-z]+$/", $str); 
} 
function is_mobile($str){ 
//检验是否是手机 
return preg_match("/^((\(\d{3}\))|(\d{3}\-))?13\d{9}$/", $str); 
} 
function is_phone($str){ 
//建云那是否是电话 
return preg_match("/^((\(\d{3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}$/", 
$str); 
} 
function is_safe($str){ 
return (preg_match("/^(([A-Z]*|[a-z]*|\d*|[-_\~!@#\$%\^&\*\.\(\)\[\]\{\}<>\?\\\/\'\"]*)|. 
{0,5})$|\s/", $str) != 0); 
} 
}

PS:下面再给大家分享一段代码

<?php
/**
* @description: 正则表达式匹配
*/
class Regex {
/**
* @手机号
*/
public static function Phone($subject) {
$pattern='/^(0|86|17951)?(13[0-9]|15[012356789]|1[78][0-9]|14[57])[0-9]{8}$/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @数字
*/
public static function Number($subject) {
$pattern='/^[0-9]+$/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @年份 格式:yyyy
*/
public static function Year($subject) {
$pattern='/^(\d{4})$/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @月份 格式:mm
*/
public static function Month($subject) {
$pattern='/^0?([1-9])$|^(1[0-2])$/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @日期 格式:yyyy-mm-dd
*/
public static function Day($subject) {
$pattern='/^(\d{4})-(0?\d{1}|1[0-2])-(0?\d{1}|[12]\d{1}|3[01])$/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @日期时间 格式:yyyy-mm-dd hh:ii:ss
*/
public static function DateTime($subject) {
$pattern='/^(\d{4})-(0?\d{1}|1[0-2])-(0?\d{1}|[12]\d{1}|3[01])\s(0\d{1}|1\d{1}|2[0-3]):[0-5]\d{1}:([0-5]\d{1})$/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @邮箱
*/
public static function Email($subject) {
$pattern='/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @邮编
*/
public static function Postcode($subject) {
$pattern='/[1-9]\d{5}(?!\d)/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @有效图片地址
*/
public static function Photo($subject) {
$pattern='/\b(([\w-]+:\/\/?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|\/)))/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @URL地址
*/
public static function UrlAddress($subject) {
$pattern='/\b(([\w-]+:\/\/?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|\/)))/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @有效HTTP地址
*/
public static function EffectiveHttp($subject) {
$pattern='/\b(([\w-]+:\/\/?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|\/)))/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @身份证
*/
public static function Identity($subject) {
$pattern='/(^\d{15}$)|(^\d{17}([0-9]|X)$)/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @IPv4
*/
public static function Ipv4($subject) {
$pattern='/^(((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5]))\.){3}((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5]))$/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @IPv6
*/
public static function Ipv6($subject) {
$pattern='/^([\da-fA-F]{1,4}:){7}[\da-fA-F]{1,4}$/';
return Regex::PublicMethod($pattern, $subject);
}
/**
* @匹配正则公共方法
*/
public static function PublicMethod($pattern, $subject){
if(preg_match($pattern, $subject)){
return true;
}
return false;
}
}

好了,内容就这么多少,希望对大家有所帮助!

PHP 相关文章推荐
PHP编程网上资源导航
Oct 09 PHP
php基础知识:函数基础知识
Dec 13 PHP
jq的get传参数在utf-8中乱码问题的解决php版
Jul 23 PHP
php 空格,换行,跳格使用说明
Dec 18 PHP
深入解析PHP的引用计数机制
Jun 14 PHP
解析php根据ip查询所在地区(非常有用,赶集网就用到)
Jul 01 PHP
PHP递归删除目录几个代码实例
Apr 21 PHP
linux使用crontab实现PHP执行计划定时任务
May 10 PHP
PHP利用hash冲突漏洞进行DDoS攻击的方法分析
Mar 26 PHP
PHP中addslashes()和stripslashes()实现字符串转义和还原用法实例
Jan 07 PHP
JS+PHP实现用户输入数字后显示最大的值及所在位置
Jun 19 PHP
PHP编程快速实现数组去重的方法详解
Jul 22 PHP
彻底搞懂PHP 变量结构体
Oct 11 #PHP
利用php + Laravel如何实现部署自动化详解
Oct 11 #PHP
Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
Oct 11 #PHP
laravel migrate初学常见错误的解决方法
Oct 11 #PHP
Laravel学习基础之migrate的使用教程
Oct 11 #PHP
ThinkPHP 在阿里云上的nginx.config配置实例详解
Oct 11 #PHP
Laravel中的Blade模板引擎示例详解
Oct 10 #PHP
You might like
PHP函数utf8转gb2312编码
2006/12/21 PHP
php格式化工具Beautify PHP小小BUG
2008/04/24 PHP
php中常量DIRECTORY_SEPARATOR用法深入分析
2014/11/14 PHP
PHP结合jQuery插件ajaxFileUpload实现异步上传文件实例
2020/08/17 PHP
php自定义函数实现二维数组按指定key排序的方法
2016/09/29 PHP
PHP开发api接口安全验证操作实例详解
2020/03/26 PHP
XHTML下,JS浮动代码失效的问题
2009/11/12 Javascript
jQuery打印指定区域Html页面并自动分页
2014/07/04 Javascript
window.location 对象所包含的属性
2014/10/10 Javascript
浅谈jQuery中对象遍历.eq().first().last().slice()方法
2014/11/26 Javascript
jQuery插件Elastislide实现响应式的焦点图无缝滚动切换特效
2015/04/12 Javascript
js实现发送验证码后的倒计时功能
2015/05/28 Javascript
jQuery实现手机自定义弹出输入框
2016/06/13 Javascript
Js动态设置rem来实现移动端字体的自适应代码
2016/10/14 Javascript
基于jQuery实现选项卡效果
2017/01/04 Javascript
AngularJS基于MVC的复杂操作实例讲解
2017/12/31 Javascript
微信小程序提取公用函数到util.js及使用方法示例
2019/01/10 Javascript
深入理解javascript prototype的相关知识
2019/09/19 Javascript
vue 路由子组件created和mounted不起作用的解决方法
2019/11/05 Javascript
Node.js API详解之 util模块用法实例分析
2020/05/09 Javascript
vue element table中自定义一些input的验证操作
2020/07/18 Javascript
举例讲解Python中的身份运算符的使用方法
2015/10/13 Python
Python中装饰器学习总结
2018/02/10 Python
Python时间序列缺失值的处理方法(日期缺失填充)
2019/08/11 Python
Python3连接Mysql8.0遇到的问题及处理步骤
2020/02/17 Python
Python实现AI自动抠图实例解析
2020/03/05 Python
使用Pytorch搭建模型的步骤
2020/11/16 Python
python文件路径操作方法总结
2020/12/21 Python
Forever 21美国官网:美国标志性快时尚品牌
2017/02/20 全球购物
Kappa英国官方在线商店:服装和运动器材
2020/11/22 全球购物
医院后勤自我鉴定
2013/10/13 职场文书
毕业寄语大全
2014/04/09 职场文书
升职自我推荐信范文
2015/03/25 职场文书
五一晚会主持词
2015/07/01 职场文书
用人单位的规章制度,怎样制定才是有效的?
2019/07/09 职场文书
Python实现聚类K-means算法详解
2022/07/15 Python