Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 批量更新,包含第三行内容的txt文件名(第三行内)_Javascript_Node.js_Regex_Batch Rename - Fatal编程技术网

Javascript 批量更新,包含第三行内容的txt文件名(第三行内)

Javascript 批量更新,包含第三行内容的txt文件名(第三行内),javascript,node.js,regex,batch-rename,Javascript,Node.js,Regex,Batch Rename,我已经成功地形成了一个正则表达式来搜索.txt文件中的日期格式,并使用在中找到的每个日期批量更新.txt文件的每个名称。但是,新的要求是在日期出现之前获取成员ID和成员名称 我不愿意为此使用正则表达式,因为格式似乎不够独特。我想抓取文本文件“第3行”上的所有内容,并在名称前加上前缀(日期之前)。 例如.txt文件的前3行如下所示: MEMBER -------- --------------- 9999199 RON, CAPTAIN // this is line 3 即所需的

我已经成功地形成了一个正则表达式来搜索
.txt
文件中的日期格式,并使用在中找到的每个日期批量更新
.txt
文件的每个名称。但是,新的要求是在日期出现之前获取成员ID和成员名称


我不愿意为此使用正则表达式,因为格式似乎不够独特。我想抓取文本文件“第3行”上的所有内容,并在名称前加上前缀(日期之前)。


例如.txt文件的前3行如下所示:

MEMBER    
-------- ---------------
9999199  RON, CAPTAIN // this is line 3
即所需的新文件名/输出:
9999199\u RON,CAPTAIN\u 2015-07-09.txt

下面是我到目前为止通过目录中的文本文件批处理并获取日期作为名称的内容。(即目前更名为
2015-07-09.txt
)。。只需获取上面的成员编号和名称(包括逗号)就可以将其作为新名称的前缀,或者将其作为新文件名放在日期方面之前



尝试使用分隔符拆分
fileContents
\n,并将其限制为
3

let [,,line3] = fileContents.split('\n', 3); 

if(line3) {
    // do the work
} else {
    // error handling, where file is too short, less than 3 lines.
}

然后你可以在
line3

上做进一步的
replace()
split()
/
join()
我在想抓取文本文件“第3行”上的所有内容,并在前面加上名字,这对你有用吗?不,我还没有想出如何逐行提取。。(因此,这部分的问题)仅在此时(即我的工作日期)计算出正则表达式。但我不想在这两件事上使用正则表达式,因为它们的模式似乎不是唯一的,似乎是不稳定的解决方案。
let [,,line3] = fileContents.split('\n', 3); 

if(line3) {
    // do the work
} else {
    // error handling, where file is too short, less than 3 lines.
}