Tôi tin rằng tôi có một câu trả lời tốt cho vấn đề này, nhưng tôi muốn chắc chắn rằng ruby-philes không có cách nào tốt hơn để làm điều này.Chuyển đổi giá trị đầu vào thành Integer hoặc Float, như là thích hợp khi sử dụng Ruby
Về cơ bản, được đưa ra một chuỗi đầu vào, tôi muốn chuyển đổi chuỗi thành số nguyên, nếu thích hợp hoặc một phao, nếu thích hợp. Nếu không, chỉ cần trả về chuỗi.
Tôi sẽ đăng câu trả lời của mình dưới đây, nhưng tôi muốn biết liệu có cách nào tốt hơn không.
Ex:
to_f_or_i_or_s("0523.49") #=> 523.49
to_f_or_i_or_s("0000029") #=> 29
to_f_or_i_or_s("kittens") #=> "kittens"
Trong chức năng của tôi, điều đó thực sự sẽ được trả về dưới dạng một chuỗi, vì chuyển đổi float sẽ thất bại và ném một ngoại lệ và sau đó giải cứu sẽ chạy to_s và trả về. – WattsInABox
@WattsInABox: Đúng là bạn (cho bạn biết tôi sử dụng 'Float ') bao nhiêu. Nhưng bạn vẫn có ký hiệu khoa học để lo lắng. –
Đây là tru, @muistooshort. Cảm ơn! – WattsInABox