Bestimmen Sie, ob eine Zeichenfolge ein gültiger Gleitkommawert ist

Gibt es eine Möglichkeit, einfach zu überprüfen, ob ein Zeichenfolgenwert ein gültiger Gleitkommawert ist. Der Aufruf von to_f für einen String konvertiert ihn in 0.0, wenn es sich nicht um einen numerischen Wert handelt. Und die Verwendung von Float () löst eine Ausnahme aus, wenn eine ungültige Float-Zeichenfolge übergeben wird, die näher an dem liegt, was ich möchte, aber ich möchte keine abfangenden Ausnahmen behandeln. Was ich wirklich will, ist eine Methode wie nan? Das gibt es in der Float-Klasse, aber das hilft nichts, da eine nicht numerische Zeichenfolge nicht in einen Float konvertiert werden kann, ohne dass sie in 0.0 geändert wird (mithilfe von to_f).

<code>"a".to_f => 0.0

"a".to_f.nan? => false

Float("a") => ArgumentError: invalid value for Float(): "a"
</code>

Gibt es eine einfache Lösung dafür oder muss ich Code schreiben, um zu überprüfen, ob eine Zeichenfolge einen gültigen Gleitkommawert hat?

Antworten auf die Frage(8)

Ihre Antwort auf die Frage