看板 Perl 關於我們 聯絡資訊
最近在寫一段篩選字串的演算法 有一段是想要把字串拆開成單一的字母放到陣列裡面 然後計算每個單一字母在原字串中出現的次數 我把拆開的字母跟出現次數這兩個塞到變數裡面 再用迴圈寫成雜湊或是陣列中元素的資料格式 我測試過印出用迴圈跑出來的資料格式應該是正確的 可是再把那個資料塞到一個新的陣列或是雜湊裡面 就失敗了 因為印不出東西 感覺像是沒有放進去 請各位高手幫我看看 謝謝>< 以下是我的程式碼 use Switch; #Convert the input into a LIST with each word (or character) as a list element. @mergelist = (''); $string = "BACDEAFCDGBACD"; $threshold = 1; $seperator = 'x'; #$t = 0; my @list = split(//, $string); push @list, $seperator; for (my $i=0; $i < $#list; $i++){ @match = ($string =~ /@list[$i]/g); $t = scalar @match; $data .= @list[$i].", ".$t.", "; } @match = ($string =~ /@list[$#list]/g); $t = scalar @match; $data .= @list[$#list].", ".$t; #print $data; => 這行印出來是正常的 my @freq = qw($data); print $freq[3]; => 但是這行就印不出東西 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.122.85.186
AntaresStar:你把@freq印出來就知道了... 09/09 21:10
AntaresStar:我看你應該是想把$data弄成陣列吧 那就用split 09/09 21:11