匹配除两个(或更多)之外的所有*.js文件

Wra*_*ker 3 regex

我正在寻找一个reg.表达式匹配my / lib目录中的所有*.js文件,除了(例如)jquery.jsrequire.js.

^(\/lib/)([^\/]*)$
Run Code Online (Sandbox Code Playgroud)

以上只选择lib目录中的所有.js文件,但我不确定在哪里定义排除部分.

/lib/jquery.js
/lib/handlebars.sj
/librequire.js
/lib.test.js
Run Code Online (Sandbox Code Playgroud)

Mar*_*oun 9

试试这个正则表达式*(如果我理解正确的话):

\/lib\/(?!jquery|require).*\.js
Run Code Online (Sandbox Code Playgroud)

它匹配目录中的所有.js文件,/lib/除了jquery.jsrequire.js.

这被称为负向前瞻,当你想要匹配其他东西匹配的东西时使用它.

请注意,此正则表达式与以(jqueryrequire之后/lib/)开头的任何内容都不匹配,如果您愿意,可以轻松绑定所需单词.

*我不认为正则表达式是解决此问题的最佳方法