Grunt匹配正则表达式

时间:2015-04-09 15:44:55

标签: javascript node.js gruntjs

我试图使用无效的正则表达式来提取最新的修订版号。有人可以用这个来帮助一个新手正则表达式:

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(); }); } );

1 个答案:

答案 0 :(得分:1)

你应该能够\d+,然后拉出第一个元素,如:

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

DEMO

如果你想把它当作整数而不是字符串,只需在表达式中添加+

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