找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 24029|回复: 4

[文本处理] [已解决]批处理怎么删除同一行的重复字符?

[复制链接]
发表于 2012-11-16 21:56:39 | 显示全部楼层 |阅读模式
特殊符号打不出来,例子如图:

把同一行的重复字符删除(尤其是特殊字符),所有重复保留一个就可以了。

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2012-11-17 08:33:29 | 显示全部楼层
本帖最后由 tmplinshi 于 2012-11-17 09:18 编辑
  1. onigsed.exe -R "s/(.)(?=.*?\1)//g" a.txt
复制代码
onigsed 下载地址: http://bathome.net/thread-20202-1-1.html?1353112459

==================================
  1. perl -pe "s/\G$1//g while (/(.).*(?=\1)/g)" a.txt
复制代码
perl5.6 (242 KB) 下载地址: http://ishare.iask.sina.com.cn/f/14534556.html

==================================

gawk "BEGIN{FS=\"\"}{delete _;for(i=1;i<=NF;i++){if(!_[$i]++) printf $i};print\"\"}" a.txt


注:以上三个代码来自 http://stackoverflow.com/questions/2582940/how-do-i-remove-duplicate-characters-and-keep-the-unique-one-only-in-perl
 楼主| 发表于 2012-11-17 09:09:14 | 显示全部楼层
回复 2# tmplinshi


    好像不起作用,给出文本你测试吧……
发表于 2012-11-17 09:16:05 | 显示全部楼层
回复 3# 每天几分
  1. onigsed.exe --ctype=UTF8 -R "s/(.)(?=.*?\1)//g" a.txt >new.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
每天几分 + 1 很好!辛苦了!

查看全部评分

发表于 2012-11-17 11:01:38 | 显示全部楼层
回复  tmplinshi


    好像不起作用,给出文本你测试吧……
每天几分 发表于 2012-11-17 09:09
  1. gawk -W ctype=UTF8 "BEGIN{FS=""}{delete _;for(i=1;i<=NF;i++){if(!_[$i]++) printf $i};print""}" a.txt >new.txt
复制代码
gawk 下载地址: http://bathome.net/thread-20203-1-1.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 20:55 , Processed in 0.019786 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表