credo di avere una buona risposta a questo problema, ma ho voluto fare in modo rubino-philes non hanno un modo molto migliore per farlo.convertire il valore di ingresso per intero o float, a seconda dei casi Utilizzando Rubino
Fondamentalmente, in una stringa di input, desidero convertire la stringa in un intero, se del caso, o un galleggiante, se del caso. Altrimenti, basta restituire la stringa.
vi posto la mia risposta qui sotto, ma mi piacerebbe sapere se c'è un modo migliore là fuori.
Es:
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"
Nella mia funzione, che verrebbe effettivamente restituito come stringa, poiché la conversione float fallirebbe e genererebbe un'eccezione e quindi il salvataggio eseguirà to_s e ritornerà. – WattsInABox
@WattsInABox: Giusto sei (mostra quanto uso 'Float'). Ma hai ancora una notazione scientifica di cui preoccuparti. –
Questo è tru, @muistooshort. Grazie! – WattsInABox