perl语言编程哈希函数使用遇到的问题 悬赏:0技术分 提高悬赏 补充问题 无满意答案 提高悬赏: 5 10 15 20 3

perl语言编程哈希函数使用遇到的问题本人为新手,写程序是碰见了难题,跪求各位大侠指点帮助,最后一个求单词位置的哈希函数,最后输出的有个多次出现的单词只能输出最后出现的位... perl语言编程哈希函数使用遇到的问题
本人为新手,写程序是碰见了难题,跪求各位大侠指点帮助,最后一个求单词位置的哈希函数,最后输出的有个多次出现的单词只能输出最后出现的位置,前面的位置被丢掉,怎么解决,各位高手指点,不胜感激涕零!

#!/usr/bin/perl-w
open (FD,">newfile.txt");
open (IN,"shi.txt");
@text=;
foreach $line(@text) {
$line=~(s/[^a-zA-Z0-9-]/ /g);
}
my(%count);
foreach $line(@text) {
@words=split(' ',$line);
foreach $word (@words){
if(exists $count{"$word"}) {
$count{$word}+=1;
}
else {
$count{$word}=1;
}
}
}
foreach $line(@text) {
$j+=1;
@words=split(' ',$line);
$i=0;
foreach $word (@words){
$i+=1;
$position{$word}=$i;
$number_of_line{$word}=$j;
}
}
foreach(sort keys %count){
print FD "$_ $count{$_} times( $position{$_}, $number_of_line{$_})n";
}
展开
 我来答
shenwei5566
2012-05-13 · TA获得超过610个赞
知道小有建树答主
回答量:575
采纳率:33%
帮助的人:253万
展开全部
放到数组里就行了,参考代码:
$position{$word} = [] if not exsist $position{$word};
push @{$position{$word}} , $i;
$number_of_line{$word}=[] if not exsist $number_of_line{$word};
push @{$number_of_line{$word}}, $j;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式