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+mysql扎实个人基本功
Mar 27 PHP
php读取30天之内的根据算法排序的代码
Apr 06 PHP
PHP编程过程中需要了解的this,self,parent的区别
Dec 30 PHP
ecshop实现smtp发送邮件
Feb 03 PHP
基于GD2图形库的PHP生成图片缩略图类代码分享
Feb 08 PHP
php通过array_merge()函数合并关联和非关联数组的方法
Mar 18 PHP
WordPress中获取页面链接和标题的相关PHP函数用法解析
Dec 17 PHP
PHP开发中常用的十个代码样例
Feb 02 PHP
Zend Framework教程之动作的基类Zend_Controller_Action详解
Mar 07 PHP
PHP中静态变量的使用方法实例分析
Dec 01 PHP
PHP命名空间与自动加载类详解
Sep 04 PHP
PDO::getAttribute讲解
Jan 28 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
PHP采集利器 Snoopy 试用心得
2011/07/03 PHP
PHP插入排序实现代码
2013/04/04 PHP
php获取网页中图片、DIV内容的简单方法
2014/06/19 PHP
PHP制作图形验证码代码分享
2014/10/23 PHP
PHP依赖注入(DI)和控制反转(IoC)详解
2017/06/12 PHP
在PHP中输出JS语句以及乱码问题的解决方案
2019/02/13 PHP
PHP实现递归的三种方法
2020/07/04 PHP
使用IE的地址栏来辅助调试Web页脚本
2007/03/08 Javascript
在IE中调用javascript打开Excel的代码(downmoon原作)
2007/04/02 Javascript
JQuery与Ajax常用代码实现对比
2009/10/03 Javascript
Function.prototype.call.apply结合用法分析示例
2013/07/03 Javascript
js中的this关键字详解
2013/09/25 Javascript
js获取浏览器基本信息大全
2014/11/27 Javascript
jQuery右侧选项卡焦点图片轮播特效代码分享
2015/09/05 Javascript
JavaScript中将数组进行合并的基本方法讲解
2016/03/07 Javascript
node文件上传功能简易实现代码
2017/06/16 Javascript
原生js jquery ajax请求以及jsonp的调用方法
2017/08/04 jQuery
原生实现一个react-redux的代码示例
2018/06/08 Javascript
React Native开发封装Toast与加载Loading组件示例
2018/09/08 Javascript
详解VUE调用本地json的使用方法
2019/05/15 Javascript
vue实现按需加载组件及异步组件功能
2019/05/27 Javascript
JavaScript生成一个不重复的ID的方法示例
2019/09/16 Javascript
Python实现合并两个列表的方法分析
2018/05/28 Python
关于windows下Tensorflow和pytorch安装教程
2020/02/04 Python
Python with语句用法原理详解
2020/07/03 Python
python 利用jieba.analyse进行 关键词提取
2020/12/17 Python
python爬取抖音视频的实例分析
2021/01/19 Python
利用HTML5绘制点线面组成的3D图形的示例
2015/05/12 HTML / CSS
系统管理员的职责包括那些?管理的对象是什么?
2016/09/20 面试题
银行柜员求职自荐书
2014/06/18 职场文书
公开致歉信
2019/06/24 职场文书
2019通用版新员工入职培训方案!
2019/07/11 职场文书
redis cluster支持pipeline的实现思路
2021/06/23 Redis
MySQL令人大跌眼镜的隐式转换
2021/08/23 MySQL
python 远程执行命令的详细代码
2022/02/15 Python
5个实用的JavaScript新特性
2022/06/16 Javascript