PHP和javascript常用正则表达式及用法实例


Posted in PHP onJuly 01, 2014

在计算机科学中,正则表达式用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在WEB开发中,正则表达式通常用来检测、查找替换某些符合规则的字符串,如检测用户输入E-mai格式是否正确,采集符合规则的页面内容等等。
今天我们分别用PHP和Javscript向大家介绍WEB开发中最常用最实用的正则表达式及其用法,正则表达式是一门学科,不可能使用一篇文章来讲解完,理论的东西网上很多,有兴趣的同学可以搜一大把。不过你也许没必要去埋头学习琢磨不透的正则表达式,看本文和实例给您呈现常用、实用的正则表达式。

PHP常用表达式用法:

1.匹配正整数:/^[1-9]\d*$/
2.匹配非负整数(正整数+0):/^\d+$/
3.匹配中文:/^[\x{4e00}-\x{9fa5}]+$/u
4.匹配Email:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/
5.匹配网址URL:(((f|ht){1}(tp|tps)://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)
6.匹配字母开头,5-16字符,字母数字下划线:/^[a-zA-Z][a-zA-Z0-9_]{4,15}$/
7.匹配数字,字母,下划线,中文:/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u
8.匹配中国邮政编码:/^[1-9]\d{5}$/
9.匹配IP地址:/\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/
10.匹配中国大陆身份证:/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}(\d|x|X)$/

PHP正则验证字符串方法举例:

$str = "中文啊"; 

$preg = "/^[\x{4e00}-\x{9fa5}]+$/u"; //匹配中文 

if(preg_match($preg,$str,$arr)){ 

     $msg = '匹配成功!'; 

}else{ 

     $msg = '匹配失败!'; 

} 

echo $msg;

Javascript常用表达式用法

1.匹配正整数:/^[0-9]*[1-9][0-9]*$/
2.匹配非负整数(正整数+0):/^\d+$/
3.匹配中文:/^[\u4e00-\u9fa5]/
4.匹配Email:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/
5.匹配网址URL:/^(f|ht){1}(tp|tps):\/\/([\w-]+\.)+[\w-]+(\/[\w- ./?%&=]*)?/
6.匹配字母开头,5-16字符,字母数字下划线:/^[a-zA-Z][a-zA-Z0-9_]{4,15}$/
7.匹配数字,字母,下划线,中文:/^[\u4e00-\u9fa5A-Za-z0-9_]+$/
8.匹配中国邮政编码:/^[1-9]\d{5}$/
9.匹配IP地址:/\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/
10.匹配中国大陆身份证:/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}(\d|x|X)$/

Javascript正则验证字符串方法举例:

var str = "abc@126.com"; 

var preg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/; //匹配Email 

if(preg.test(str)){ 

    var msg = "匹配成功"; 

}else{ 

    var msg = "匹配失败!"; 

} 

alert(msg);
PHP 相关文章推荐
php 用checkbox一次性删除多条记录的方法
Feb 23 PHP
PHP判断文件是否存在、是否可读、目录是否存在的代码
Oct 03 PHP
浅析PHP中Collection 类的设计
Jun 21 PHP
PHP四大安全策略
Mar 12 PHP
Fatal error: session_start(): Failed to initialize storage module: files问题解决方法
May 04 PHP
php实现的IMEI限制的短信验证码发送类
May 05 PHP
非常全面的php日期时间运算汇总
Nov 04 PHP
php实现异步数据调用的方法
Dec 24 PHP
CodeIgniter配置之autoload.php自动加载用法分析
Jan 20 PHP
linux平台编译安装PHP7并安装Redis扩展与Swoole扩展实例教程
Sep 30 PHP
PHP面向对象五大原则之里氏替换原则(LSP)详解
Apr 08 PHP
php源码的使用方法讲解
Sep 26 PHP
PHP生成二维码的两个方法和实例
Jul 01 #PHP
PHP中使用TCPDF生成PDF文档实例
Jul 01 #PHP
PHP中使用CURL模拟登录并获取数据实例
Jul 01 #PHP
2个比较经典的PHP加密解密函数分享
Jul 01 #PHP
PHP实现生成唯一编号(36进制的不重复编号)
Jul 01 #PHP
ThinkPHP使用smarty模板引擎的方法
Jul 01 #PHP
PHP使用GIFEncoder类处理gif图片实例
Jul 01 #PHP
You might like
关于更改Zend Studio/Eclipse代码风格主题的介绍
2013/06/23 PHP
php模拟登陆的实现方法分析
2015/01/09 PHP
php截取字符串函数分享
2015/02/02 PHP
PHP自定义函数获取汉字首字母的方法
2016/12/01 PHP
php redis实现文章发布系统(用户投票系统)
2017/03/04 PHP
PHP利用二叉堆实现TopK-算法的方法详解
2017/04/24 PHP
老生常谈PHP面向对象之注册表模式
2017/05/26 PHP
Laravel6.0.4中将添加计划任务事件的方法步骤
2019/10/15 PHP
Laravel jwt 多表(多用户端)验证隔离的实现
2019/12/18 PHP
JS支持带x身份证号码验证函数
2008/08/10 Javascript
JS获取浏览器版本及名称实现函数
2013/04/02 Javascript
js中实现多态采用和继承类似的方法
2014/08/22 Javascript
JavaScript给按钮绑定点击事件(onclick)的方法
2015/04/07 Javascript
js行号显示的文本框实现效果(兼容多种浏览器 )
2015/10/23 Javascript
聊一聊Vue.js过渡效果
2016/09/07 Javascript
javascript中的深复制详解及实例分析
2016/12/29 Javascript
JavaScript-定时器0~9抽奖系统详解(代码)
2017/08/16 Javascript
jQuery除指定区域外点击任何地方隐藏DIV功能
2017/11/13 jQuery
Bootstrap treeview实现动态加载数据并添加快捷搜索功能
2018/01/07 Javascript
vue+element-ui+axios实现图片上传
2019/08/20 Javascript
Vue基于iview实现登录密码的显示与隐藏功能
2020/03/06 Javascript
[56:56]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.22
2019/09/05 DOTA
Django中Forms的使用代码解析
2018/02/10 Python
Django学习笔记之ORM基础教程
2018/03/27 Python
python实现将一个数组逆序输出的方法
2018/06/25 Python
python实现傅里叶级数展开的实现
2018/07/21 Python
在numpy矩阵中令小于0的元素改为0的实例
2019/01/26 Python
python实现tail实时查看服务器日志示例
2019/12/24 Python
新秀丽官方旗舰店:Samsonite拉杆箱、双肩包、皮具
2018/03/05 全球购物
小学安全教育材料
2014/02/17 职场文书
厂长岗位职责
2014/02/19 职场文书
社区文化建设方案
2014/05/02 职场文书
法院干警四风问题个人对照检查材料思想汇报
2014/10/07 职场文书
转学证明范本
2015/06/19 职场文书
mysql如何能有效防止删库跑路
2021/10/05 MySQL
Django框架中视图的用法
2022/06/10 Python