-1
我正在执行一个查找并用gulp替换。正则表达式查找并用gulp/node替换,并使用部分查找字符串替换?
我需要找到这个字符串以下(什么都可以是任何东西,它不是 '里' 的字符串):
{% id_ANYTHING %}
而与此替换它:
{% block ANYTHING %}{% endblock %}
例1。
替换此:
{% id_page %}
有了这个:
{% block page %}{% endblock %}
例题。
替换此:
{% id_whatever %}
有了这个:
{% block whatever %}{% endblock %}
香港专业教育学院发现,我需要找到匹配的正则表达式。我已经使用gulp-replace进行类似但更简单的任务,所以我开始使用它,但我不确定如何获取“任何”值,以便我可以在替换中使用它。
https://github.com/lazd/gulp-replace
replace = function() {
return gulp.src('before.html')
.pipe(replace({
patterns:
[{
match: /{% id_.{2,99} %}/g,
replacement: '{% block page %}{% endblock %}'
}]
}))
.pipe(gulp.dest('after.html'));
},
我应该寻求与咕嘟咕嘟或节点做到这一点?
应该这样:let pattern = new RegExp(/ {%id _(。{2,99})%} /,'g'); 实际上是这样吗?:let pattern = new RegExp('{%id _(。{2,99})%}','g'); https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Regular_Expressions – Evans
@Evans它们可以互换。如果在表达式周围使用'''',而不需要表达式周围的''''。尽管将它传递给RegExp时,您可以使用'//'作为实际文字。 [见这里](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp#Description)。但要注意的是,如果在表达式周围使用'''',则需要遵循字符串的转义规则,而使用'//'的文字表示法则不需要担心。 – peteb