Board logo

标题: [文本处理] [已解决]批处理如何根据一个文本的内容排除另一个文本中相同的内容? [打印本页]

作者: sweet惜缘    时间: 2016-1-8 15:53     标题: [已解决]批处理如何根据一个文本的内容排除另一个文本中相同的内容?

http://pan.baidu.com/s/1mhrEkQW————Data.txt文件(已上传至百度云)

delete.txt中内容如下:
DB00175
DB00177
DB00178
DB00190
DB00191
DB00193
DB00199
DB00201
DB00210
DB00222
...
Data.txt中内容如下:
DB00005
DB00006
DB00007
DB00008
DB00009
DB00012
DB00013
DB00014
DB00015
...

希望最终得到的out.txt最终是Data.txt中删掉delete.txt中的字符串后的结果~~~灰常感谢~~~
作者: 回家路上    时间: 2016-1-8 16:15

真羡慕常常都有很多类似的文本需要各种各样处理。
作者: sweet惜缘    时间: 2016-1-8 16:16

回复 2# 回家路上

为嘛~~~

我这种学沫遇到这种问题简直是要醉了~
而且还要天天遇到
作者: flyinnet9    时间: 2016-1-8 16:22

用findstr就好
作者: hlzj88    时间: 2016-1-8 16:30

本帖最后由 hlzj88 于 2016-1-8 16:32 编辑
  1. @echo off
  2. title 采用关键词列表清理文本内容
  3. echo.>>关键词列表.ini
  4. echo 请修改本文件内容(删除这一行)(一个关键词一行)(关键词的特点是正文里不包含,否则会把正文也删除掉,影响正文内容)并保证下一行内容在最后一行位置>>关键词列表.ini
  5. echo 处于关闭状态>>关键词列表.ini
  6. start 关键词列表.ini
  7. echo 请从源文本中提取关键词,每词一行,运行后会删除含关键词的一行。含关键词的文件名为 关键词列表.ini
  8. echo 编辑好 关键词列表.ini 按任意键继续
  9. pause>nul
  10. for /f "delims=" %%a in (关键词列表.ini) do (
  11.    title 关键词---》%%a
  12.    for %%b in (*.txt) do (
  13.       echo %%b
  14.      (
  15.      findstr /v "%%a" "%%b"
  16.      )> #tmp# && move #tmp# "%%b">nul
  17.       ))
  18. del *关键词列表.ini>nul 2>nul
复制代码
刚好现成的有,从里面复制出来的,
作者: sweet惜缘    时间: 2016-1-8 16:47

回复 5# hlzj88


    灰常感谢~有效!




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2