我试图使用无效的正则表达式来提取最新的修订版号。有人可以用这个来帮助一个新手正则表达式:
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();
});
}
);
答案 0 :(得分:1)
你应该能够\d+
,然后拉出第一个元素,如:
var str = 'revision: 2020';
var regex = /\d+/
var number = str.match(regex)[0]; // '2020'
如果你想把它当作整数而不是字符串,只需在表达式中添加+
:
var number = +str.match(regex)[0]; // 2020