Grunt匹配正则表达式

Grunt match regular expression

本文关键字:正则表达式 Grunt      更新时间:2023-09-26

我正试图使用一个不起作用的正则表达式提取最新的修订号。有人能帮助一个新手regexer这样做吗:

revision: 2020

stdout.match(/^r('d+)/m)[1])

感谢您为提供的任何帮助

编辑

我应该把我的全部任务放在这里,这样所有人都会知道我在努力做什么

grunt.registerTask('version', 'Updating to latest revision', function () { var done = this.async(); grunt.util.spawn({ cmd: 'svn info', args: ['-r HEAD'] }, function (err, result, code) { var output = result.stdout; if (output) { var revision = result.stdout.match(/'d+/)[0]; grunt.file.write('web/version2.js', 'var UIVERSION = ' + revision); } done(); }); } );

您应该能够执行'd+,然后提取第一个元素,如:

var str = 'revision: 2020';
var regex = /'d+/
var number = str.match(regex)[0]; // '2020'

演示

如果您希望它是一个整数而不是字符串,只需在表达式中添加一个+

var number = +str.match(regex)[0]; // 2020