如果字符串以" .d.ts"结尾,如何排除?

时间:2014-12-29 14:39:35

标签: regex gulp glob

我使用正则表达式类型的glob来包含gulp中的文件。如何使用正则表达式忽略以“.d.ts”结尾但包含所有其他字符串的字符串?

我已经有了这个:

"app/*.*" 

但它包含任何结尾的文件名。

有没有办法可以将它限制在那些没有以.d.ts结尾的那些?所以例如这些就可以了:

app/abc.html
app/abc.js
app/abc.ts

但这不会

app/abc.d.ts

2 个答案:

答案 0 :(得分:4)

src定义中,您可以使用bang(!)排除路径,例如:

gulp.src(['path/to/src/**/*.*', '!path/to/src/**/*.d.ts'])

The minimatch documentation discusses the bang syntax.

注意到这个related question还有其他详细信息。

答案 1 :(得分:3)

.*(?<!\.d\.ts)$

Regular expression visualization

Debuggex Demo

(假设你的正则表达式支持你的正则表达式断言。我不知道&#34; gulp&#34;)