标题: [文本处理] 【已解决】批处理如何对比出两个文本差异/不同的内容/地方并提取出相应的内容区域? [打印本页]
作者: enoone1 时间: 2016-5-26 00:12 标题: 【已解决】批处理如何对比出两个文本差异/不同的内容/地方并提取出相应的内容区域?
求助各路大神,如题,BAT实现新老文件比对(如内容新增,删除,修改等等),提取差异文本区域(如本例固定以---------------------------划分各个区域)
(在最新文件基础上提取,本例中即基于NEW.txt提取),
文本样例及预期结果文件(本例预期结果文件:DIFF.txt)见下例附件:
作者: pcl_test 时间: 2016-5-26 20:45
本帖最后由 pcl_test 于 2016-5-26 21:51 编辑
- //&cls&cscript -nologo -e:jscript "%~f0" "new.txt" "old.txt"&pause&exit
-
- var t = {};
- var fso = new ActiveXObject('Scripting.FileSystemObject');
- var newtxt = fso.OpenTextFile(WSH.Arguments(0));
- var n = newtxt.ReadAll().replace(/[\r\n]+$/, '').split(/(\r\n){2,}/);
- var oldtxt = fso.OpenTextFile(WSH.Arguments(1));
- var o = oldtxt.ReadAll().replace(/[\r\n]+$/, '').split(/(\r\n){2,}/);
- for(var i=0; i<o.length; i++){
- if(!t[o[i]])t[o[i]]=1;
- }
- for(var i=0; i<n.length; i++){
- if(!t[n[i]])WSH.echo(n[i]+'\r\n');
- }
复制代码
作者: enoone1 时间: 2016-5-30 00:04
膜拜版主
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |