PHP 正则表达式

蘑菇| 阅读:15 发表时间:2017-06-14 18:50 语言

概念

正则表达式也称为模式表达式,自身具有一套非常完整的、可以编写模式的语法体系,提供了一种灵活且直观的字符串处理方法。

本质上就是一个字符串。

如果不配合正则函数使用,就没有任何意义,只不过是一个普通的字符串。

按照一定的规则,对字符串进行描述。组成一个模式,只要满足这个模式的字符串就会被匹配到。


作用

匹配、查找、替换和分割字符串。


语法规则

定界符、原子、元字符、模式修正符。


1. 定界符

推荐使用的定界符是://


除了数字、字母、下划线及反斜线以外的任意一个字符都可以作为定界符。

例如:~~  !!  @@  ##  $$  %%  ^^  &&  **  ()  <>  {}  []  --  ++ ||  ??  ,,  ..  (19个)


2. 原子

原子是组成正则表达式的最小单位,一个正则中至少要有一个原子。

一个原子代表一个字符。


分类

i. 普通字符:[  a~z   0~9   A~Z  _  ]


ii. 特殊字符:~!@#$%^&*()-+[]<>{}

注意:大部分特殊字符在单独作为原子使用时,要加上转义斜线(\)


iii. 非打印字符

20170614184510


iv. 通用字符类型

20170614184552

 

v. 自定义原子表([ ] 或 [^ ])


3. 元字符

修饰原子出现的个数。


限定符

3

注意:{n,m} m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。在逗号和两个数之间不能有空格


边界限制

4


句号(.) :匹配除了换行符(\n)以外的任意一个字符。[^\n]

模式选择符(|) :匹配两个或多个分支选择。

模式单元(( )) :匹配其整体为一个原子,及子模式。

后向引用:使用元字符“ ( ) ”标记的开始和结束多个原子,不仅是一个独立的单元,也是一个表达式。


模式匹配的优先级

5


4. 模式修正符

1


与Perl语言兼容的正则表达式处理函

7

版权声明:
1.本文仅代表作者观点,不代表蒙奇蘑菇的立场。
2.本文系作者授权蒙奇蘑菇发表,未经许可,不得转载。如有侵权,请联系本站删除。