Полагаю, у меня есть хороший ответ на этот вопрос, но я хотел убедиться, что у ruby-philes нет лучшего способа сделать это.
Обычно, учитывая входную строку, я хотел бы преобразовать строку в целое число, где это уместно, или число с плавающей запятой, где это необходимо. В противном случае просто верните строку.
Я опубликую свой ответ ниже, но я хотел бы знать, есть ли лучший выход там.
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"