如何删除TXT中重复的内容?

我有一个TXT问答库。大意如下:张三的老家是哪里?答:山东李四的朋友叫什么?答:舒淇张三的老家是哪里?答:山东 我想把重复的(行)内容删除掉,该怎么做?c_textreplace 这个软件不能实现我想要的。请高手给其他的办法。

1、首先打开TXT文档,可以看到文档内有很多重复的内容;

2、依次点击“编辑”-“替换”;

3、在打开的替换窗口中输入要删除的重复内容,然后将鼠标光标移动到文档的首位;

4、点击替换矿口的“查找下一个”;

5、可以看到文档中的第二个重复的内容被选中了;

6、然后在“替换为”窗口内什么都不输入,直接点击“替换”;

7、可以看到第二行的替换内容被删除了;

8、然后依次点击“替换”;

9、可以看到下面的重复内容都被依次删除了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-06

    删除TXT中重复的内容,三种方法供参考:

  一、软件删除法:

  二、Excel去重法:

  三、批处理法:

  用记事本新建一个bat文件,内容如下:

  ::怎样删除a.txt文件中重复的行?

  ::批处理不能直接更改文档中的内容,所以只能新建一个b.txt文档

  ::注:文档a中的每一行的结尾若有空格,也会被当作字符判断

  ::代码虽能达到目的,但感觉有点臃肿,还望高手简化.

  @echo off

  set a=1

  set dst=1

  setlocal enabledelayedexpansion

  for /f "delims=" %%i in (a.txt) do (

  set num=%%i

  if "!a!"=="1" (echo !num!>b.txt&set a=)

  if not !num!==!dst! (call :dd)

  for /f "delims=" %%j in (b.txt) do (

  set dst=!num!

  set var=%%j

  if "!num!"=="!var!" set lis=y

  )

  )

  start b.txt

  :dd

  if "%dst%"=="1" goto :eof

  if not "%lis%"=="y" (echo %dst%>>b.txt) else (set lis=)

  goto :eof

  保存此文件为bat格式文档后,双击执行即可得到去重后的新文本。

第2个回答  2013-10-26
这个貌似我没有试过,不过楼主可以试一下“查找”。看重复的句子或字词有多少个,然后你大概记下来数字。然后呢你选择“替换”把重复的句子或字词放在被替换的地方,要替换的呢留空白。这样它就可以把你重复的字或句子给删除了。呵呵懂了没?祝你好运!本回答被网友采纳
第3个回答  2013-10-26
用编辑——替换 把要删掉的字换成空格或空白
第4个回答  2019-12-16
TXT文本去重 TXT文本合并 TXT文件求并集
https://blog.csdn.net/zhengzizhi/article/details/72615021
测试数据大小:20亿行130GB的数据只需60分钟 平均去重速度:2000000000(行) ÷ 3600(秒) =‬ 555555(行/秒)≈55万行/秒
相似回答