浅谈PHP正则表达式的一点理解

2013 年 12 月 22 日3970

PHP正则表达式的使用在实际开发中带给我们全新的感觉,那么我们如何掌握这样一个强有力的工具呢?下面我们来看看对于PHP正则表达式学习的前期知识理解,希望对你有所帮助。

PHP被大量的应用于Web的后台CGI开发,通常是在用户数据数据之后得出某种结果,但是如果用户输入的数据不正确,就会出现问题,比如说某人的生日是"2月30日"!那应该怎么样来检验暑假是否正确呢? PHP正则表达式的支持,让我们可以十分方便的进行数据匹配。

PHP正则表达式相关的一些概念:

简单的说,正则表达式是一种可以用于模式匹配和替换的强大工具。在几乎所有的基于UNIX/LINUX系统的软件工具中找到正则表达式的痕迹,例如:Perl或PHP脚本语言。此外,JavaScript这种客户端的脚本语言也提供了对正则表达式的支持,现在正则表达式已经成为了一个通用的概念和工具,被各类技术人员所广泛使用。

在某个Linux网站上面有这样的话:"如果你问一下Linux爱好者最喜欢什么,他可能会回答正则表达式;如果你问他最害怕什么,除了繁琐的安装配置外他肯定会说正则表达式。"

正如上面说的,正则表达式看起来非常复杂,让人害怕,大多数的PHP初学者都会跳过这里,继续下面的学习,但是PHP中的正则表达式有着可以利用模式匹配找到符合条件的字符串、判断字符串是否合乎条件或者用指定的字符串来替代符合条件的字符串等强大的功能,不学实在太可惜了……

PHP正则表达式的基本语法:

一个正则表达式,分为三个部分:分隔符,表达式和修饰符。

分隔符可以是除了特殊字符以外的任何字符(比如"/ !"等等),常用的分隔符是"/"。表达式由一些特殊字符(特殊字符详见下面)和非特殊的字符串组成,比如"[a-z0-9_-]+@[a-z0-9_-.]+"可以匹配一个简单的电子邮件字符串。修饰符是用来开启或者关闭某种功能/模式。下面就是一个完整的正则表达式的例子:

    /hello.+?hello/is

上面的正则表达式"/"就是分隔符,两个"/"之间的就是表达式,第二个"/"后面的字符串"is"就是修饰符。

在表达式中如果含有分隔符,那么就需要使用转义符号"",比如"/hello.+?/hello/is"。转义符号除了用于分隔符外还可以执行特殊字符,全部由字母构成的特殊字符都需要""来转义,比如"d"代表全体数字。

PHP正则表达式的一点理解就向你介绍到这里,希望对你了解和掌握PHP正则表达式有所帮助。

0 0