PHP模式修饰符又叫模式修正符,是在正则表达式的定界符之外使用。主要用来调整正则表达式的解释,提扩展了正则表达式在匹配、替换等操作的某些功能,增强了正则的能力。但是有很多地方的解释都是错误的,也容易误导别人,所以今天我把这个文档整理出来,供大家参考。

模式修正符号 功能描述
i 在和正则匹配是不区分大小写
m 将字符串视为多行。默认的正则开始“^”和结束“$”将目标字条串作为一单一的一“行”字符(甚至其中包括换行符也是如此)。如果在修饰符中加上“m”,那么开始和结束将会指点字符串的每一行的开头就是“^”结束就是“$”。
s 如果设定了这个修正符,那么,被匹配的字符串将视为一行来看,包括换行符,换行符将被视为普通字符串。
x 忽略空白,除非进行转义的不被忽略。转载请注明WEB开发笔记(www.chhua.com
e 只用在preg_replace()函数中,在替换字符串中逆向引用做正常的替换,将其作为PHP代码求值,并用其结果来替换所搜索的字符串。
U 贪婪模式,最大限度的匹配就是贪婪模式。
D 模式中的$字符权匹配目标字符的结尾。没有此选项时,如果最后一个字符是换行符的话,美元符号也会匹配此字符之前。如果设定了修正符m则忽略此项。

?

好了就先说这么多吧,累了,本来想举几个例子的,以后有时间再举例说明吧。

自由转载,转载请注明: 转载自WEB开发笔记 www.chhua.com

本文链接地址: PHP正则表达式模式修饰符详解 http://www.chhua.com/web-note2532

相关笔记

更多