如何在gulp.src中使用基本正则表达式?

7
我正在尝试使用gulp.src选择两个文件:highcharts.jshighcharts.src.js
当然,我知道我可以用数组表达式来明确地添加这两个文件,但是出于学习目的,我正在尝试为它们编写一个单一的表达式。
我已经了解到可以使用简单的正则表达式语法,但并不清楚如何操作。
我尝试过:
gulp.src("highcharts(\.src)?\.js")

但是它没有匹配到任何文件。


2
尝试使用 gulp.src("highcharts.{src.js,js}") - Wiktor Stribiżew
1
@WiktorStribiżew 谢谢,它确实有效,甚至是简化的(但更丑陋的)gulp.src("highcharts{.src,}.js"),但我仍然想知道如何使用实际的正则表达式语法。或者也许我们不能,我误解了什么? - Zoltán Tamási
1
gulp.src仅支持glob,或编写带有glob + regex的自定义函数并将文件列表传递给gulp.src。 - YOU
1个回答

12

Gulp使用glob,它不支持您通常使用的正则表达式。它使用特殊的模式匹配文件。

您的示例可以编写为:

gulp.src('highcharts?(.src).js')

请查看glob primer,了解更多使用glob的示例。


1
啊,这是一个好的资源,终于找到了,感谢你提供的链接。同时也感谢你提供的具体解决方案。 - Zoltán Tamási

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接