我一直在使用的表达式在regExr中工作,但是当我在节点中运行我的代码时,它只返回一个部分而不是部分数组。
我的节点文件
'use strict';
var fs = require('fs');
module.exports = function() {
fs.readFile('text.txt', 'UTF8', function(err, contents) {
if(err) throw err;
var re = /({{> (\w*)}})/g;
var myArray = re.exec(contents);
console.log(myArray);
});
}();
TEXT.TXT
{{> test}}
{{> test2}}
{{> test3}}
我的返回结果只是{{> test}}
答案 0 :(得分:1)
如果您使用.exec()
,则需要在循环中调用它,直到它返回null
以获得所有匹配结果。要简单地获取数组中的匹配项,请在内容上使用.match
:
'use strict';
var fs = require('fs');
module.exports = function() {
fs.readFile('text.txt', 'UTF8', function(err, contents) {
if(err) throw err;
var re = /({{> (\w*)}})/g;
var myArray = contents.match(re);
console.log(myArray);
});
}();