正则表达式

正则表达式:

简介: 正则是用于描述字符排列和匹配模式的一种语法规则。主要用于字符串的模式分割、匹配、查找及替换。

在PHP中,正则一般由正规字符和一些特殊字符联合构成的一个文本模式的程序性描述。(也就是个字符串)

正则表达式的 字符串必须放在 对应的函数中使用。

作用: 匹配,也常用于从字符串中析取信息

            新文本代替旧文本。

           将一个字符串拆分为一组更小的信息块。

组成:

    定界符号:/ /(常用)  、| |  、  { } 

    原子:  最小的匹配单位,在一个正则表达式中,至少要有一个原子。

    元字符:不能单独使用,修饰原子,用来扩展原子功能和限定功能。

     模式修正符:  对模式修正,写在定界符的外边,右边。

 

原子:

   1.打印字符(a-z A-Z 0-9 !@#$%^&*()_+)和非打印字符(回车,空格,table)

    2.  \d  代表一个数字  [0-9]

         \D 代表一个非数字  [^0-9]

         \w 代表一个字  [a-z A-Z 0-9]

         \W 代表一个非字 [^a-z A-Z 0-9]

         \s  代表空白   [\t  \n  \f  \v]       \f  换页  \n 换行  \r  回车  \t 制表符 \v垂直制表符 

          \S 代表非空白  [^\t  \n  \f  \v]

3.自己定义原子

  [13579]  ——从哪到哪的区间范围  ^ 除去列表中的

4.  点  .    代表所有

 

元字符:

  *       前边原子出现0个一个或多个

  +      前边原子出现一次或多次

  ?        前边原子出现 0次或1次

 {m}     m=3  前边原子中能出现3 次  多少都不行

 {n,m}    前边原子出现  n 到 m 次,包括n和m,,m可以不写  {n,} ,表示至少多少次 ,n不可以省略   

    |     或

   ^或\A   匹配字符串的开始位置,写在正则最前边

   $或\Z   匹配字符串的结束位置,写在正则最后边

   \b        匹配单词边界

  \B         匹配除单词边界以外部分

括号  ()  :1.改变优先级

                2.将小原子变为大原子

                3.反向引用

                 4.子模式,小括号中的是每个独立的子模式

模式修正符号 ,修正正则表达式的解释,扩充正则表达式的功能

 i:修正正则表达式不区分大小写(默认区分大小写)

 m:修正正则表达可视为多行,在使用^,$这两个符号时,每一行都可以满足,(默认视为一行处理)

 s:修正正则表达式中的 . 可以匹配换行符,(默认 .  不能匹配回车)

 x: 修正正则表达式,可以省略空白

 e: 修正正则表达式,是可以执行表达式内部的函数。

PCRE 函数

       preg_filter— 执行一个正则表达式搜索和替换

       preg_grep— 返回匹配模式的数组条目  

                   eg: preg_grep('/\d/',$arr);   返回带数字的数组元素。     

       preg_last_error— 返回最后一个PCRE正则执行产生的错误代码

       preg_match — 执行匹配正则表达式

              preg_match_all— 执行一个全局正则表达式匹配

               preg_match_all('//',$str,$arr);    将字符串$str中符合正则表达式的,取出,赋值给$arr

       preg_quote— 转义正则表达式字符

       preg_replace_callback_array—使用回调执行正则表达式搜索和替换

       preg_replace_callback— 执行一个正则表达式搜索并且使用一个回调进行替换

       preg_replace— 执行一个正则表达式的搜索和替换

       preg_split— 通过一个正则表达式分隔字符串

                    第三个参数为整形,限定分割次数,若为 -1 则不限制次数,,第四个参数为常量。

 

 

你可能感兴趣的:(正则表达式)