WEB开发时常用的正则表达式(PHP和Javascript)

在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);

小编整理的20个常见的表达式,希望对大家的学习有所帮助。

正则表达式是一门学科,不可能使用一篇文章来讲解完,理论的东西网上很多,有兴趣的同学可以搜一搜,多了解了解。

时间: 2024-09-17 03:59:51

WEB开发时常用的正则表达式(PHP和Javascript)的相关文章

WEB开发时常用的正则表达式(PHP和Javascript)_正则表达式

在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+(

解决Golang在Web开发时前端莫名出现的空白换行_Golang

问题: 在使用Golang做Web开发时,有时候渲染出来的模板在前台显示时会出现一些奇怪的空白换行,具体特征就是查看css样式表并没有相关定义的空白部分. 分析: 查看出现问题页面的网页源代码,复制空白换行部分转码为Unicode编码,发现其中包含了\u2028这样的字符[图一].  [图一] 另外,直接在浏览器检查里边的html选择Edit as html,也可发现在空白处存在小红点,鼠标移上会直接显示该字符是\u2028[图二].查阅资料发现,这样的换行符在JavaScript中并不支持.

Web开发人员常用速查手册 英文集合推荐_相关技巧

为了方便各位朋友,本文收集了一些对Web开发人员非常有用的手册,记得推荐一下哦. HTML 速查手册 HTML/XTML in one page HTML5: The Evolution of Web Standards by James Sugrue (X)HTML Elements and Attributes Doctype Declarations (DTDs) XHTML Character Entity Reference GoSquared HTML Help Sheet   CS

php开发中常用的正则表达式大全

整理了工作中常用的一些正则表达式,常用的正则验证表达式: 数字相关的正则表达式 数字:^[0-9]*$ n位定长的数字:^\d{n}$ m-n位之间的数字:^\d{m,n}$ 零和非零开头的数字:^(0|[1-9][0-9]*)$ 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$ 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$ 正数.负数.和小数:^(\-|\+)?\d+(\.\d+)?$ 有两位小数的正实数:^[0-9]+(

C# web 开发时TextBox不支持 keyup事件

问题描述 各位朋友,我现在想实现改变Textbox内容时就触发函数,而且不让它失去焦点,用onTextChanged事件的话,必须到别的地方点一下,等textbox失去焦点后,才能触发函数.请问有什么方法让它不是去焦点,还能在内容发生变化时触发相应的函数? 解决方案 解决方案二:只能用javascript吧解决方案三:用input+js,而不是asp:button+后台代码解决方案四:引用2楼Z65443344的回复: 用input+js,而不是asp:button+后台代码 这个input支持

Web开发必备资料(牛腩整理)

  自己在WEB开发中必备的资料整理了一下,包含如下东西: 以上工具都是本人在WEB开发中常用的,那个截图工具有个获取屏幕上任何一个地方的颜色值,很好用,而且用它来计算DIV的宽度高度也很好用. 更新于 2010年10月4日15时45分,增加了正则表达式的相关工具 下载地址: http://niunan.net/download/web.rar

Erlang 与 Web 开发(转)

问题描述 Erlang 语言的很多特性,决定了它开发服务器端(**)的程序极其地方便,故此,基于 Erlang 的各种服务应用正雨后春笋般涌现.这里我们就大家最熟悉的 Web 开发展开话题.考虑到 Erlang 并不广为人知,这里以脱盲为主,如果某个话题引起你的兴趣,建议你参考相关文档继续深入下去.有任何希望讨论的地方,可以在 erlang-china 或 ecug 这两个 google groups 中讨论.本文重点介绍的是 Yaws 和 MochiWeb,其他内容做概要介绍.**Erlang

php作wap开发时遇到的问题

 1.文件格式首先要遇到的问题肯定是文件格式,在作web开发时,大家都是用的html或xhtml,到了wap开发时,就得用wml了.什么是wml?大家可以去查更详细的资料,我这里只是略微的提到.在我看来wml类似于xml,有非常严格的格式,在作wap页面时,都得用wml来作为显示. wml的语法非常简单,在用php作动态输出时,一定要发送一个头信息,标明本页面是wml,而不是别的什么*ml. header("Content-type: text/vnd.wap.wml; charset=\&qu

要成为Web开发大师,你必须知道这7件事

曾经是这样的,懂点编码,并可以偶尔耍点酷,那么你就会被认为是一个Web开发大师.但是现在,情况再也不是这样的了.Web开发已经朝着主流方向发展,开发人员数量显著增加.要成为Web开发大师,你必须知道这7件事 这意味着,如果你想成为这个领域的大师,那么你需要比竞争对手更优秀.知识更渊博.更有能力.有些人可能会想,那么应该怎么办呢?好问题--我们将在这篇文章中探索一二. 1.你需要更深入 现在,不管是谁,只要能够连上互联网,就可以学习如何编码(有各种视频学习渠道).但是,你需要比他们知道得更多.这意