У меня есть строка "08", и я хотел бы знать, является ли эта строка числовой.Как я могу сделать это в Rails 3.1?
"08"
Еще один способ сделать это - указать ему значение ruby:
begin Float(string) # String is numeric rescue ArgumentError, TypeError # String is not numeric end
Вы можете использовать регулярное выражение:
str = "08" if str =~ /^-?(\d+(\.\d+)?|\.\d+)$/ # string is numeric else # string is not end
Если вы хотите проверить пользовательский ввод, было бы так же просто позволить им вводить числа с чем-то вроде validates_format_of :string, :with => /[0-9]/.
validates_format_of :string, :with => /[0-9]/