Maison >développement back-end >tutoriel php > 【正则】为何这写也有效呢

【正则】为何这写也有效呢

WBOY
WBOYoriginal
2016-06-13 12:59:47888parcourir

【正则】为什么这写也有效呢?

本帖最后由 php441914320 于 2012-12-10 12:28:48 编辑 匹配压缩包文件名(x.rar x.rar x.7z):

我是这么写的:
'/^\w+\.rar$|^\w+\.zip$|^\w+\.7z$/i'

但是后来发现这么写也可以:
'/^\w+\.rar|zip|7z$/i'


关于“|”这个符号的理解还是不到位啊,求指教。

关于第二个正则表达式,按我的理解应该这样执行:
比如我有已经压缩包名为“test.rar”
第一个匹配:“test.rar”匹配是失败的。
第二次匹配:应该匹配“zip”但为什么匹配了“^\w+\.zip$”?


------解决方案--------------------
最好读一下文件的头信息,服务器端验一下文件的真实性~
引用:
引用:推荐一个函数, pathinfo();
PHP code?1/^\w+\.(rar
------解决方案--------------------
zip
------解决方案--------------------
7z)$/i
这么写就没问题了,o(∩_∩)o 哈哈。
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn