仓酷云

标题: PHP编程:PHP正则表达式:PHP中的正则函数 [打印本页]

作者: 萌萌妈妈    时间: 2015-2-3 23:41
标题: PHP编程:PHP正则表达式:PHP中的正则函数
当然你可以把你最基本的功能放出来的时候就放出来,比如放到论坛上,让大家都参与,   </p> PHP正则表达式次要用于字符串的形式朋分、婚配、查找及交换操作。利用正则表达式在某些复杂的情况下能够效力不高,因而若何更好的利用PHP正则表达式需求综合思索。
我的PHP正则入门,是发源于网上的一篇文章,这篇文章由浅入深的论述了PHP正则表达式利用的办法,我感觉是一个很好的入门资料,不外学成仍是要 靠团体,在利用的过程当中,仍是会不休地健忘,因而反重复复的浏览了这篇文章有四五遍,关于个中一些对照坚苦的常识点,乃至要用好久才干消化,然而只需能见 保持着看完,你会发明本人关于正则的应用才能就会明显进步。
PHP正则表达式的界说:
用于描写字符分列和婚配形式的一种语律例则。它次要用于字符串的形式朋分、婚配、查找及交换操作。
PHP中的正则函数:
PHP中有两套正则函数,二者功效差不多,分离为:
一套是由PCRE(Perl Compatible Regular Expression)库供应的。利用“preg_”为前缀定名的函数;
一套由POSIX(Portable Operating System Interface of Unix )扩大供应的。利用以“ereg_”为前缀定名的函数;(POSIX的正则函数库,自PHP 5.3今后,就不在保举利用,从PHP6今后,就将被移除)
因为POSIX正则行将推出汗青舞台,而且PCRE和perl的模式差不多,更利于咱们在perl和php之间切换,所以这里重点引见PCRE正则的利用。
PCRE正则表达式
PCRE全称为Perl Compatible Regular Expression,意思是Perl兼容正则表达式。
在PCRE中,凡是将形式表达式(即正则表达式)包括在两个反斜线“/”之间,如“/apple/”。
正则中主要的几个概念有:元字符、本义、形式单位(反复)、反义、援用和断言,这些概念都可以在文章[1]中轻松的了解和把握。
经常使用的元字符(Meta-character):
元字符     申明
\A       婚配字符串串首的原子
\Z       婚配字符串串尾的原子
\b       婚配单词的界限     /\bis/   婚配头为is的字符串   /is\b/   婚配尾为is的字符串   /\bis\b/ 定界
\B       婚配除单词界限以外的恣意字符   /\Bis/   婚配单词“This”中的“is”
\d     婚配一个数字;等价于[0-9]
\D     婚配除数字之外任何一个字符;等价于[^0-9]
\w     婚配一个英文字母、数字或下划线;等价于[0-9a-zA-Z_]
\W     婚配除英文字母、数字和下划线之外任何一个字符;等价于[^0-9a-zA-Z_]
\s     婚配一个空白字符;等价于[\f\t\v]
\S     婚配除空白字符之外任何一个字符;等价于[^\f\t\v]
\f     婚配一个换页符等价于 \x0c 或 \cL
婚配一个换行符;等价于 \x0a 或 \cJ
婚配一个回车符等价于\x0d 或 \cM
\t     婚配一个制表符;等价于 \x09\或\cl
\v     婚配一个垂直制表符;等价于\x0b或\ck
\oNN   婚配一个八进制数字
\xNN   婚配一个十六进制数字
\cC    婚配一个掌握字符
形式修改符(Pattern Modifiers):
形式修改符在疏忽巨细写、婚配多行中利用出格多,把握了这一个修改符,常常能处理咱们碰到的良多成绩。
i     -可同时婚配巨细写字母
M     -将字符串视为多行
S     -将字符串视为单行,换行符做通俗字符对待,使“.”婚配任何字符
X     -形式中的空白疏忽不计  
U     -婚配到比来的字符串
e     -将交换的字符串作为表达利用
格局:/apple/i婚配“apple”或“Apple”等,疏忽巨细写。     /i
PCRE的形式单位:
//1 提取第一名的属性
/^\d{2} ([\W])\d{2}\\1\d{4}$婚配“12-31-2006”、“09/27/1996”、“86 01 4321”等字符串。但上述正则表达式不婚配“12/34-5678”的格局。这是由于形式“[\W]”的了局“/”已被存储。下个地位“\1”援用 时,其婚配形式也是字符“/”。
当不需求存储婚配了局时利用非存储形式单位“(?:)”
例如/(?:abc)(DEF)\\1g/ 将婚配“aEEg”。在一些正则表达式中,利用非存储形式单位是需要的。不然,需求改动厥后援用的按次。上例还可以写成/(abc)(CEF)\2g/。
<p>虽说不上很好,但至少一般的数据操作,再在原有的SQL语言的基础上,用得还是可以的。
作者: 只想知道    时间: 2015-2-4 06:05
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
作者: 乐观    时间: 2015-2-7 12:19
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
作者: 蒙在股里    时间: 2015-2-21 20:45
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
作者: 小女巫    时间: 2015-3-6 21:31
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
作者: 变相怪杰    时间: 2015-3-13 10:07
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
作者: 第二个灵魂    时间: 2015-3-20 19:06
实践是检验自己会不会的真理。
作者: 海妖    时间: 2015-3-28 10:54
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
作者: 仓酷云    时间: 2015-3-30 12:32
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
作者: 简单生活    时间: 2015-4-11 05:19
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
作者: 飘飘悠悠    时间: 2015-4-11 05:43
基础有没有对学习php没有太大区别,关键是兴趣。
作者: 再见西城    时间: 2015-4-17 09:07
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
作者: 金色的骷髅    时间: 2015-4-26 16:10
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
作者: 灵魂腐蚀    时间: 2015-5-1 10:10
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
作者: 再现理想    时间: 2015-5-6 02:09
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
作者: 活着的死人    时间: 2015-6-14 20:35
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
作者: 小妖女    时间: 2015-6-18 21:31
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
作者: 深爱那片海    时间: 2015-7-10 04:36
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
作者: 萌萌妈妈    时间: 2015-7-18 23:18
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
作者: 山那边是海    时间: 2015-7-23 01:31
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。




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