作者mswethan (@竹北)
看板Perl
標題[問題] 刪掉串列內重覆字串
時間Wed Jul 20 22:51:17 2011
最近剛開始看Perl,也試著練習寫...
目前遇到一個問題:
從檔案讀取資料進來處理,
一次讀取一列並儲存於一Array,
但可能會有資料重覆,如:(ABC重覆)
ABC
CDE
ABC
DEF
...
...
重覆的資料我就不儲存於Array中,
請問是否有函式可以直接判斷目前抓進來的字串是否已經儲存在Array中了呢?
如果沒有這種函式的話,不知道各位有何想法...
目前的想法是抓完資料之後,對Array再處理過...感覺有點麻煩...
謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.243.171.225
1F:推 jengys:hash會是好朋友:) 07/20 23:16
2F:→ mswethan:嗯,感謝,剛才有人指點... 07/20 23:20
3F:推 rom1025:Smart Matching也可以 07/21 07:07
5F:推 sqrt1089:use List::MoreUtils; 07/22 21:24
6F:→ sqrt1089:@array=List::MoreUtils::uniq @array; 07/22 21:24
7F:→ sqrt1089:這樣array裡面的字串都是獨一 07/22 21:24
8F:推 yjchang0206:hash.... 07/24 07:49
9F:推 andychen76:my %hash; 07/25 20:57
10F:→ andychen76:my @array_2 = grep (!$hash{$_}++, @array); 07/25 20:58
11F:→ andychen76:利用hash 可以把@array 裡面有重複的值都拿掉 07/25 20:58
12F:→ andychen76:剩下沒有重複的 都會放到@array_2裡面 07/25 20:59