2012-10-16 89 views
2

我想知道是否有寫在紅寶石以下的幹法:紅寶石多或評估對於字符串值

ext == ".xlsx" || ext == ".xls" || ext == ".ods" 

我最初的想法是這似乎並沒有按預期工作如下:

ext == ".xlsx" || ".xls" || ".ods" 
+0

您對第二塊代碼的期望是錯誤的。 –

+2

@DavidGrayson是的,我注意到了,所以這個問題。 – Noz

+0

只要確保您知道這不是Ruby解釋器中的錯誤 –

回答

3
%w(.xlsx .xls .ods).include? ext 
5

是的,有...

['.xlsx','.xls','.ods'].include? ext 
1
ext =~ /(.xlsx$)|(.xls$)|(.ods$)/ 

irb(main):009:0> '.xlsx' =~ /(.xlsx$)|(.xls$)|(.ods$)/ 
=> 0 
irb(main):010:0> '.xlsa' =~ /(.xlsx$)|(.xls$)|(.ods$)/ 
=> nil