2011-12-14 52 views
1

我這個數組中查找的關鍵字"admin"如何爲此編寫匹配的正則表達式?

params[:controller] = ["admin","organizations"] 

所以我寫了這一點:

params[:controller].split(/\//).each{|a|a.match(/admin/)} 

但是,這令人費解返回:

["admin", "organizations"] 

我失去了什麼正確的語法這裏?

回答

4

爲什麼不使用

params[:controller].include? "admin" 
+0

絕對(假設歸弦,我沒有,基於問題的原始正則表達式性質,儘管因爲它正在查看控制器層次結構,所以我打賭你是對的+1) – 2011-12-14 20:46:55

1

each返回原始數組。

聽起來更像you want any?,如果有任何集合元素獲得塊返回的真值,則返回true

(你總是可以只join了。)

0

你匹配語句是不是真的做任何事情,因爲它不產生任何輸出。如果您有puts a.match(/admin/),它會將「admin」寫入一次。

每個實際的返回值是數組,這就是爲什麼你看到返回原來的數組..