赛后追加线
问题描述:
比赛结束后如何打印5条线?想用类似如下:赛后追加线
var error="1234";
fs.readFileSync('errors.txt').toString().split('\n').forEach(function(line){
var idx = line.match(error);
if (idx !== null) {
fs.appendFileSync(result.txt, line + "\n");
}
});
哪给了我唯一的匹配线。 我的目标是追加匹配和5个后续行,甚至更好的2个匹配之间的所有行。
答
我会使用一个变量来追踪我们是否追加(在forEach循环之外定义),然后根据需要修改和测试变量。例如:
var appending = 0
if (idx !== null || appending > 0) {
fs.appendFileSync(...)
appending = (appending === 0) ? 5 : appending - 1
}
谢谢,会试一试 – plska
作为一个魅力,永远不会想到我自己。谢谢。 – plska