免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3256 | 回复: 10
打印 上一主题 下一主题

请问去重复并排序应该用什么代码? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-08-31 23:19 |只看该作者 |倒序浏览
比如:
12345
qwe123
!wertt4
!wertt4
12345

输出:
!wertt4
12345
qwe123

麻烦各位大侠帮忙指点一下,感谢中!!!

论坛徽章:
0
2 [报告]
发表于 2005-08-31 23:38 |只看该作者

请问去重复并排序应该用什么代码?

  1. perl -e 'map{++$hash{$_};}<>;; print sort keys %hash;' tmp
复制代码

论坛徽章:
0
3 [报告]
发表于 2005-08-31 23:41 |只看该作者

请问去重复并排序应该用什么代码?

用 hash 吧如果数据量不是很大的话。

打印的时候 for $key (sort keys %hashdata){print $key;}

如果对Perl 的数据结构有什么问题详细可以参考

http://www.pgsqldb.org/twiki/bin/view/Perl/DataStructures

仔细阅读可以解决很多问题。

论坛徽章:
0
4 [报告]
发表于 2005-09-01 00:14 |只看该作者

请问去重复并排序应该用什么代码?

感谢两位大侠指点!
不过俺初学还看不太懂,不知哪个代码表示是输入文件?
还有输出文件?

论坛徽章:
0
5 [报告]
发表于 2005-09-01 00:31 |只看该作者

请问去重复并排序应该用什么代码?

L:\per\nbw>;perl nn99.pl
Bareword found where operator expected at nn99.pl line 7, near "'map{++$hash{$_}
;}<>;; print sort keys %hash;' tmp"
        (Missing operator before tmp?)
syntax error at nn99.pl line 7, near "perl -e "
Execution of nn99.pl aborted due to compilation errors.

不知是什么意思?麻烦大家帮忙解释一下!谢谢!

论坛徽章:
0
6 [报告]
发表于 2005-09-01 02:09 |只看该作者

请问去重复并排序应该用什么代码?

  1. perl -e '++$hash{$_}while(<>;); print sort keys %hash;' tmp
复制代码

这是命令行模式, tmp是输入文件. man perl

论坛徽章:
0
7 [报告]
发表于 2005-09-01 07:53 |只看该作者

请问去重复并排序应该用什么代码?

原来是命令行啊,多谢提醒!

俺试过了,CMD提示:

L:\per\nbw>;perl -e '++$hash{$_}while(<>; print sort keys %hash;' tmp
此时不应有 >;。

不知为什么,还是没通过。

俺现在最想知道的是如何完成去重复后只留下一个?麻烦大家了!

俺忘了说明一下,俺用的win32平台下的ActivePerl-5.8.7.813-MSWin32-x86-148120版本。

论坛徽章:
0
8 [报告]
发表于 2005-09-01 10:21 |只看该作者

请问去重复并排序应该用什么代码?

win32平台要使用""而不是''

perl -e "++$hash{$_}while(<>); print sort keys %hash;" tmp

问题解决了,多谢rorot兄!

要是有代码就更好了!

[ 本帖最后由 perl911 于 2006-1-10 21:41 编辑 ]

论坛徽章:
0
9 [报告]
发表于 2005-09-01 13:10 |只看该作者

请问去重复并排序应该用什么代码?

或者...

D:\>;perl -ne "++$h{$_};END{print sort keys %h}" tmp

There is more than one way to do it  

关于 perl 命令行的使用请参考 perlchina 中文化翻译的这篇文章
http://www.perlchina.org/archive/archive.php?action=archive&page=19

论坛徽章:
0
10 [报告]
发表于 2005-09-01 13:48 |只看该作者

请问去重复并排序应该用什么代码?

用shell命令也可以吧?
sort -u inputfilename >; outputfilename
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP