[問題] 該怎麼比對?

看板Perl作者 (....)時間13年前 (2011/09/19 08:23), 編輯推噓1(105)
留言6則, 4人參與, 最新討論串1/1
想問個比對問題 我有A陣列 @A=(7,19,5) 然後B陣列第一列有個元素9 $B[0]=9 當我做比對時 我用 if("@A"=~/$B[0]/) {do somrthing;} 原則上來說 9!=19 但經由這個比對 因為可以在A中找到 1"9" 所以if會成立 但我並不想讓這種情況成立... 請問有甚麼辦法或寫法可以讓這種比對區別9!=19呢 第一次用perl還不是很熟... 感激不盡!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 24.99.214.16

09/19 08:33, , 1F
for $x (@A) {if ( $x == $B[0] ) { do something; };};
09/19 08:33, 1F

09/19 11:29, , 2F
感謝!!
09/19 11:29, 2F

09/19 16:57, , 3F
=~ 是 RE 的字串比對,你需要的是數值比對
09/19 16:57, 3F

09/20 09:27, , 4F
一樓是不是多了幾個分號?
09/20 09:27, 4F

09/21 22:41, , 5F
莫名其妙多出來幾個分號了
09/21 22:41, 5F

09/23 02:43, , 6F
scalar grep{$_ == $B[0]} @A
09/23 02:43, 6F
文章代碼(AID): #1ETejsWS (Perl)
文章代碼(AID): #1ETejsWS (Perl)