免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 855 | 回复: 0
打印 上一主题 下一主题

PHP一些常用的正则表达式 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-04-22 16:00 |只看该作者 |倒序浏览

 匹配中文字符的正则表达式: [\u4e00-\u9fa5]
  匹配双字节字符(包括汉字在内): [^\x00-\xff]
  应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;}
  匹配空行的正则表达式: \n[\s| ]*\r
  匹配HTML标记的正则表达式: /.*|/
  匹配首尾空格的正则表达式: (^\s*)|(\s*$)
  应用:javascript中没有像vbscript那样的trim函数,我们就可以利用这个表达式来实现,如下:
String.prototype.trim = function() {
return this.replace(/(^\s*)|(\s*$)/g, "");
}
  利用正则表达式分解和转换IP地址:
  下面是利用正则表达式匹配IP地址,并将IP地址转换成对应数值的javascript程序:
function IP2V(ip) {
re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //匹配IP地址的正则表达式
if(re.test(ip)) {
return RegExp.*Math.pow(255,3))+RegExp.*Math.pow(255,2))+RegExp.*255+RegExp.*1
}
else {
throw new Error("Not a valid IP address!")
}
}
  不过上面的程序如果不用正则表达式,而直接用split函数来分解可能更简单,程序如下:
var ip="10.100.20.168"
ip=ip.split(".")
alert("IP值是:"+(ip[0]*255*255*255+ip[1]*255*255+ip[2]*255+ip[3]*1))
  匹配Email地址的正则表达式: \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
  匹配网址URL的正则表达式: http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
  利用正则表达式去除字串中重复的字符的算法程序:
var s="abacabefgeeii"
var s1=s.replace(/(.).*/g,"")
var re=new RegExp("["+s1+"]","g")
var s2=s.replace(re,"")
alert(s1+s2) //结果为:abcefgi
  用正则表达式从URL地址中提取文件名的javascript程序,如下结果为page1
s="http://www.9499.net/page1.htm"
s=s.replace(/(.*\/)([^\.]+).*/ig,"")
alert(s)
  利用正则表达式限制网页表单里的文本框输入内容:
  用正则表达式限制只能输入中文:
onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"
  用正则表达式限制只能输入全角字符:
onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"
  用正则表达式限制只能输入数字:
onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
  用正则表达式限制只能输入数字和英文:
onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
http://www.52ec.org
企业电子商务指南
http://www.sxian.net
数字寿州寿县门户
http://www.myjinxin.cn/
金信输送设备 输送机金信
http://www.jinxin8.com
、 工业流水线自动化流水线电动车流水线
http://www.jinxinec.com
  金信输送线输送流水线
http://www.wltuoye.com
  拓野流水线
http://www.liushuixian.com
中国流水线行业网
http://www.wltuoye.cn
  拓野生产线
http://www.myjinxin.com
  金信装配线、装配流水线
http://www.myjinxin.cn
  输送设备、输送机
http://www.51jinxin.com
金信生产线生产流水线
http://www.wlyalong.com
雅龙流水线
http://www.elyalong.com
雅龙生产线
http://www.wljinxin.com
金信流水线
http://www.wllianchuang.cn/
  自动化装配线输送线流水线生产线
http://www.zslsx.com
   增盛流水线
http://www.hekaitong.com
  和凯通电动门道闸岗亭
http://www.tzyalong.com/
  雅龙装配线,装配流水线
http://www.36oo.com
  台州水泵网
http://www.toplsx.com
  装配线,装配流水线,流水线配件
http://www.zjcmlsx.cn/
生产线、组装流水线、自动化流水线
http://www.tzcmlsx.cn/
输送线、输送流水线、皮带输送线
http://www.ecmlsx.cn/
板链线、流水线设备、皮带流水线
http://www.cncmlsx.cn/
流水线、工业流水线、自动化流水线
http://www.wlcmlsx.cn/
流水线、装配线、装配流水线、涂装流水线
http://www.51jinxin.com
生产流水线
http://www.wlyalong.com
流水线
http://www.elyalong.com
生产线
http://www.yalongec.com
输送设备
http://www.ecyalong.com
生产流水线
http://www.yalong8.com
" 输送机
http://www.yalong9.com
输送线
http://www.tzyalong.com
装配线,装配流水线
http://www.wlaoqi.cn
装配线,装配流水线


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/36870/showart_283744.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP