仓酷云

标题: PHP教程之PHP一些经常使用的正则表达式 [打印本页]

作者: 深爱那片海    时间: 2015-2-4 00:08
标题: PHP教程之PHP一些经常使用的正则表达式
聪明的你,显然已经逐渐的开悟了,慢慢的理解了编程的概念,那么祝贺你,你已经迈出了成功的第一步。正则       婚配中文字符的正则表达式: [\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,''))"  兴趣可能会慢慢消亡,所以适当培养兴趣会激发自己无线的乐趣,有了乐趣,编程有啥难的。
作者: 再现理想    时间: 2015-2-4 09:24
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
作者: 小女巫    时间: 2015-2-4 21:03
做为1门年轻的语言,php一直很努力。
作者: 谁可相欹    时间: 2015-2-5 12:38
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
作者: 若天明    时间: 2015-2-7 04:23
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
作者: 只想知道    时间: 2015-2-16 01:24
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
作者: 小魔女    时间: 2015-3-4 21:22
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
作者: 爱飞    时间: 2015-3-7 07:19
本文当是我的笔记啦,遇到的问题随时填充
作者: 老尸    时间: 2015-3-7 14:30
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
作者: 蒙在股里    时间: 2015-3-8 15:32
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
作者: 因胸联盟    时间: 2015-3-16 03:21
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
作者: 柔情似水    时间: 2015-3-17 04:07
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
作者: 冷月葬花魂    时间: 2015-3-20 19:34
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
作者: 莫相离    时间: 2015-4-6 13:07
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
作者: 飘灵儿    时间: 2015-4-7 17:28
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
作者: 精灵巫婆    时间: 2015-4-14 13:40
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
作者: 透明    时间: 2015-4-15 19:51
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
作者: 分手快乐    时间: 2015-4-21 17:15
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
作者: 若相依    时间: 2015-4-26 11:15
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
作者: 金色的骷髅    时间: 2015-4-27 08:06
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
作者: 兰色精灵    时间: 2015-5-9 21:02
说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年  具体的记不清啦,囧。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2