Re: [問題] 純量變數和陣列完全比對問題
謝謝大家的意見
我改出來了
我發現問題在 mysql 欄位中的字串
他跟一模一樣的字串都會多出3的字元
這為什麼我也不知道???也許以後我會發現吧 ~
我猜除了換行字元以外,會不會開頭,結尾都有空白字元
我參考書本上的方法
把 資料庫撈出來的字串,去頭去尾
在chomp
$result[2] =~ s/^\s+//;
$result[2] =~ s/\s+$//;
chomp($result[2]);
print length ($result[2]);
這樣就可以拿出來作我第一回的資料完全比對
感謝大家~~QQ
※ 引述《nana0130 (小那)》之銘言:
: 大家好
: 我又卡關了
: 上一個問題我解決了
: 這次又有新的問題
: Perl 沒有我想像中的簡單 QQ
: |||orz
: 我想把 $result[2] 跟 @lines 作完全比對,完全正確,一字不差,要算true
: 這是我的網頁 http://140.116.39.115/cgi-bin/ans.pl
: 明明看起來兩的都一樣,可是程式卻判別不出來
: 我節錄一段我的程式
: 我再想是不是 $result[2]為一純量變數 要轉成陣列
: 還是 @lines 是陣列要轉成純量變數之後,她們才可以作比較???
: 我的想法對嗎 ???
: while (@result = $sth->fetchrow_array)
: {
: print $result[2]; #純量變數
: print length($result[2]);
: open(INFO, $file);
: my @lines = <INFO>;
: close(INFO);
: print @lines;
: print length(@lines);
: if (@lines eq 'I/PRP am/VBP from/IN Taiwan/NNP ./.')
: {print "1";}
: else {print "0";}
: if ($result[2] eq 'I/PRP am/VBP from/IN Taiwan/NNP ./.')
: {print "3";}
: else {print "4";}
: if ($result[2] eq @lines)
: {print "5";}
: else {print "6";}
: }#end of while
: 感謝曾經幫過我寫Perl的人,等我變強,我也會來這個版回饋‵‵
: 3Q~~Q皿Q
--
感謝每個幫我克服Perl關卡的人~
感謝你~雖然我不認識你~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.20.191.116
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Perl 近期熱門文章
PTT數位生活區 即時熱門文章