Ich versuche zu entscheiden, ob eine Zeichenfolge in Ruby eine Zahl ist. Dies ist mein CodeType Conversions in Ruby: Der "richtige" Weg?
whatAmI = "32.3a22"
puts "This is always false " + String(whatAmI.is_a?(Fixnum));
isNum = false;
begin
Float(whatAmI)
isNum = true;
rescue Exception => e
puts "What does Ruby say? " + e
isNum = false;
end
puts isNum
Ich weiß, dass ich es mit einem RegEx tun können, aber gibt es eine standardisierte Möglichkeit, es zu tun, dass ich fehle? Ich habe eine can_convert gesehen? Methode, aber ich habe es nicht zu haben.
Gibt es eine Möglichkeit, eine can_convert hinzuzufügen? Methode für alle Strings? Ich verstehe, dass es in Ruby möglich ist. Ich verstehe auch, dass dies völlig unnötig sein kann ...
Bearbeiten Die to_f Methoden funktionieren nicht, da sie nie eine Ausnahme werfen, sondern nur 0 zurückgeben, wenn es nicht klappt.
schön! das habe ich gebraucht. –