作者dryman (dryman)
看板Perl
标题Re: [问题] 关於字串
时间Mon Sep 27 23:52:28 2010
※ 引述《petertc (PTC)》之铭言:
: ※ 引述《sqrt1089 (李崩子)》之铭言:
: : 假设我读入一个档案
: : lee David
: : wang steve
: : lee eric
: : wu hunry
: : .. ..
: : .. ..
: : .. ..
: : 是个两行的档案,一行是姓,一行是名。
: : 想要结果
: : 输入:lee
: : 会印出:
: : David
: : eric
概念很简单:弄一个hash of arrays
要把hash value当成array,只要用@{$my_hash{key}}就可以了
所以strs的第一个值就当key,第二个值推入array中
#!/usr/bin/perl
while(<>){
@strs=split;
push @{ $name_hash{$strs[0]}}, $strs[1];
}
print $_ . "\n" for @{ $name_hash{'lee'}};
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.46.30
1F:推 sqrt1089:那我执行完关闭再开启,我如果输入wang,他会印出steve 09/28 14:36
2F:→ dryman:执行完程式都从记忆体中消失了 ~"~ 09/28 15:00
3F:推 sqrt1089:囧!因为我不知道lee的,我想要的是随意输入,lee只是个 09/28 15:14
4F:→ sqrt1089:例子 09/28 15:15
5F:→ sqrt1089: 只要("知道"是打错的) 09/28 15:15
6F:→ kornelius:那就自己再改一下就好啦 09/28 15:34
7F:→ dryman:改成用open的,然後互动输入来找是否有在hash里面 09/28 15:40