返回列表 发帖

[文本处理] 批处理怎样识别相同行的文本后移动文本内容?

论坛的大哥们帮我下,我想实现以下功能,谢谢!
1、我这边有3个txt文本,每个文本都有几千万行。(第一个文本demo.txt,第二个文本a.txt,第三个文本b.txt)
2、首先识别demo.txt的第一行内容,去a.txt里匹配,行与行匹配,完全一致的行才算匹配上。
3、再将demo.txt的第一行内容,去b.txt里匹配,行与行匹配,完全一致的行才算匹配上。
4、将匹配结果输出到result.txt里,格式为:demo.txt的第一行实际内容,a.txt存在,b.txt不存在,时间XXXX年XX月XX日XX点XX分XX秒
5、记录好日志之后,把这三个文本中的这行内容都给删除掉
6、接着识别demo.txt的第二行内容,以此类推。
7、因为数据量庞大,可能处理会很慢,所以在批处理的对话框(或者标题中)里要显示当前正在处理第几行,方便我评估剩余时间
8、因为数据量庞大,可能处理会很慢,所以最好是处理一行--记录日志--删除内容后接着处理第二行,如果所有文本的所有行一次性读取到内存里预处理的话可能让预处理的时间会很久很久
9、注意是行与行匹配,完全一致的行才算匹配上。
10、有个示例
demo.txt有三行数据
12
123
1


a.txt有三行数据
1
11
12


b.txt有5行数据
1
2
3
124
0125



result.txt为:
12,a.txt存在,b.txt不存在,2025年4月7日17点00分05秒
123,a.txt不存在,b.txt不存在,2025年4月7日17点00分08秒
1,a.txt存在,b.txt存在,2025年4月7日17点00分12秒

返回列表