欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

正则表达式 - PHP正则匹配 preg_match 大写U 小写u分别有什么用途

程序员文章站 2022-05-25 17:52:03
...
发现一个奇怪的现象,如果加了u,结果就不一样,而且大写U和小写u的结果也不一样。

回复内容:

发现一个奇怪的现象,如果加了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的帮助文档

相关标签: php 正则表达式