我的正则表达式与我想要的不匹配。
"/.*\\.\\(css\\)\\|\\(js\\)\\|\\(png\\)"
目前正在匹配:
/static/css/main.css
但它不匹配:
/static/js/prettify.js
或者:
/static/img/preview.png
我很欣赏我所遗漏的任何建议。感谢。
答案 0 :(得分:3)
让我们在没有语言特定引用的情况下简化您的正则表达式:
.*\.(css)|(js)|(png)
↑
[ ]|[ ]|[ ]
您已匹配/static/css/main.css
,因为第一个|
适用于模式.*\.(css)
。您应该在扩展名周围添加另一个括号:
.*\.((css)|(js)|(png))
现在.*\.
抓住第一部分(扩展前),然后您正在寻找css
,js
或png
。
用你的语言我认为它会像:
/.*\\.\\(\\(css\\)\\|\\(js\\)\\|\\(png\\)\\)