时间:2021-07-01 10:21:17 帮助过:16人阅读
发现一个奇怪的现象,如果加了u,结果就不一样,而且大写U和小写u的结果也不一样。
u (PCRE_UTF8)
此修正符打开一个与 perl 不兼容的附加功能。 模式字符串被认为是utf-8的. 这个修饰符 从 unix 版php 4.1.0 或更高,win32版 php 4.2.3 开始可用。 php 4.3.5 开始检查模式的 utf-8 合法性
U (PCRE_UNGREEDY)
这个修饰符逆转了量词的"贪婪"模式。 使量词默认为非贪婪的,通过量词后紧跟? 的方式可以使其成为贪婪的。这和 perl 是不兼容的。 它同样可以使用 模式内修饰符设置 (?U)进行设置, 或者在量词后以问号标记其非贪婪(比如.*?)。
模式修饰符
U默认为懒惰模式,不加的话默认为贪婪模式
一个是贪婪模式,一个不是贪婪模式,如果是贪婪模式会把所有的结果都输出的。可以自己参看下php的帮助文档