首頁  >  文章  >  後端開發  >  正则表达式 - PHP正则匹配 preg_match 大写U 小写u分别有什么用途

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

PHP中文网
PHP中文网原創
2016-06-06 20:33:271447瀏覽


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

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn