如何删除字符串并使用批处理脚本替换文本文件中的内容。
的test.txt
Version: 4.5.0
Import:
//MPackages/Project/config/abc.txt #head
//Packages/Project/config/cde.txt #head
View: 24234
//MPackages/Project/config/ac.txt #head
删除"导入:"之间找到的任何文字。和"查看:"并将其替换为示例文本文件中的内容..
sample.txt的
1
2
3
所需的输出
Version: 4.5.0
Import:
1
2
3
View: 24234
//MPackages/Project/config/ac.txt #head
答案 0 :(得分:1)
您可以使用纯批次执行此操作,但强大的解决方案实际上非常复杂。我几乎放弃了使用纯批处理进行文本处理。
相反,我使用JREPL.BAT - 一个混合的JScript /批处理正则表达式文本处理器,可以在XP以后的任何Windows机器上本机运行。
以下一个内核在命令行和批处理脚本中都可以正常工作。它假定“导入:”和“视图:”仅出现一次。
jrepl "^" " " /f sample.txt | jrepl "^(Import:)[\s\S]*?(^View:)" "$1+'\r\n'+stdin.ReadAll()+$2" /j /m /f test.txt /o output.txt