2010-07-20 55 views

回答

3

如何:

file_ext = attach.document_file_name[/\.[^.]*$/] 
+0

这也应该工作。好戏。从我+1。 – GeekTantra 2010-07-20 17:49:30

+0

请注意,如果没有找到扩展名,它将返回'nil'。如果您更喜欢空字符串,请在行尾添加一个to_s。 – giraff 2010-07-21 18:14:04

10

还有内置的红宝石功能File.extname

file_ext = File.extname(attach.document_file_name) 

(不同之处在于File.extname('hello.')回报''而你的正则表达式将返回'.'

+1

+1为什么如果有一个功能完全符合你想要的功能,就会乱用正则表达式 – bta 2010-07-20 18:03:49

2

如果你想使用正则表达式来做到这一点,你可以简单地做:

irb(main):040:0> "foo.txt"[/\w*.(\w*)/,1] 
=> "txt" 
相关问题