当前位置: 代码迷 >> Web前端 >> php5与mysql5 web 开发技术详解-五 正则表达式
  详细解决方案

php5与mysql5 web 开发技术详解-五 正则表达式

热度:140   发布时间:2013-03-06 16:20:31.0
php5与mysql5 web 开发技术详解-5 正则表达式

正则表达式(Regular Expression) 是查找和替换字符串模式的简洁和灵活的表示法。
重要性不再赘述,理解起来不算难,但若没有一定的实践,做到灵活应用还是不容易的。
在php中,分为 POSIX和PCRE两种规格的正则表达式。
先简单罗列出主要内容,以后再增加说明和实例。


一、POSIX (Portable Operating System Implementation for Unix),意为Unix可移植操作系统实现接口。
1、^ 和$ 定位符
2、量词或限定词
      *
      +
      ?
       {n}
       {n,}
       {n,m}
3、方括号表达式
       [aAeEiIoOuU]   所有元音字符的字符簇
       [0-9]   [a-z]
4、预定义字符簇  (内置的通用字符簇,指定字符的处理范围)
      [[:alpha:]]       大小写字母,同[a-zA-Z]
      [[:digit:]]          数字,同[0-9]
      [[:alnum:]]     大小写字母和数字,同[a-zA-Z0-9]
      [[:cntrl:]]         控制字符,包括Tab,退格或反斜线
      [[:space:]]      任何白字符,包括空格、Tab、换行、换页和回车
      ......
      不一一列举
5、正则表达式函数
     ereg(条件,<原始字符串>)
     eregi()   不区分大小写
     ereg_replace()  :   ereg()的基础上增加了字符替换功能
     eregi_replace()
     split()  针对字符串中的分隔符对串分割成数组形式
     spliti()
     sql_regcase()
6 、POSIX 子模式

二、PCRE(Perl Compatible Regular Expression)

  1、字符簇
     \\b
     \\d
     \\s
     \\t
     \\w
  2、匹配
     表达式的开始和结束处 使用分隔符 / ,最后一个分隔符/后,可添加修饰符
     I ,M ,S,X,U,DU
     还可以使用各种元字符,类似 POSIX的定位符和字符簇的组合
     \A ,\b,\B,\d,\D,\s,\S,[],(),^,$,. ,\, \w ,\W
  3、函数
     preg_match()  :  
           例:preg_match('/^[[:alnum]]{4,8}$/', $username)    
     preg_match_all()  
     preg_quote()  : 加转意字符
     preg_split() :
     preg_grep()
     preg_replace() :替换
     preg_replace_callback()