假设JS/CSS文件的给定URL有时会以'?v=xyz‘或类似的形式结束。
如何在PCRE中捕获这两种情况,即
"/my/path/lib.js"以下是
"\.[js|css]$"工作得很好。我想列举一些案例,例如:
"/my/path/lib.js?v=1.4"和
"/my/path/style.css?v=3"我使用的是Lua-5.1 PCRE库
> rex_pcre = require "rex_pcre"
> return rex_pcre.find("/my/path/jquery.css", "\.(?:js|css)(?:$|\?)")
stdin:1: nothing to repeat (pattern offset: 17)
stack traceback:
[C]: in function 'find'
stdin:1: in main chunk
[C]: ?发布于 2013-03-14 16:26:27
您可以使用:
\.(?:js|css)(?:$|\?)请注意,[js|css]并不是您想象的那样。这是一个字符类,它与cjs|的一个字符匹配,您需要一个组:(?:js|css)。
https://stackoverflow.com/questions/15404300
复制相似问题