Determine si una cadena es un valor flotante válido

¿Hay una manera de simplemente verificar si un valor de cadena es un valor flotante válido. Llamar a to_f en una cadena lo convertirá a 0.0 si no es un valor numérico. Y el uso de Float () genera una excepción cuando se pasa una cadena float no válida que está más cerca de lo que quiero, pero no quiero manejar las excepciones de captura. Lo que realmente quiero es un método como nan? que existe en la clase Float, pero eso no ayuda porque una cadena no numérica no se puede convertir en un float sin cambiar a 0.0 (usando to_f).

<code>"a".to_f => 0.0

"a".to_f.nan? => false

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

¿Existe una solución simple para esto o necesito escribir código para verificar si una cadena es un valor flotante válido?

Respuestas a la pregunta(8)

Su respuesta a la pregunta