जवाबों:
इस बारे में कैसा है?
"1,112".delete(',').to_i
आप यह भी सुनिश्चित कर सकते हैं कि आपका कोड सही ढंग से स्थानीयकृत हो, या सुनिश्चित करें कि उपयोगकर्ताओं को "अंतर्राष्ट्रीय" नोटेशन के लिए उपयोग किया जाता है। उदाहरण के लिए, "1,112" वास्तव में विभिन्न देशों में विभिन्न संख्याओं का अर्थ है। जर्मनी में इसका अर्थ है एक हजार से कुछ की बजाय एक से थोड़ी अधिक संख्या।
विकिपीडिया लेख के अनुरूप http://en.wikipedia.org/wiki/Decimal_mark पर है । यह इस समय हालांकि खराब लिखा हुआ लगता है। एक चीनी के रूप में उदाहरण के लिए मुझे यकीन नहीं है कि चीन में हजार विभाजक के बारे में ये विवरण कहां से आया है।
कुछ और सुविधाजनक
"1,1200.00".gsub(/[^0-9]/,'')
यह "1 200 200" को ठीक से अस्वस्थ बनाता है
'1,1200.00'.gsub(/[^0-9\.]/,'').to_f
।
"1,1200.00"
हो "1120000"
? क्या आप ,
(या स्थान के आधार पर .
) को बदलना नहीं चाहते हैं ? इसके अलावा, यह इसे एक पूर्णांक या फ्लोट में परिवर्तित नहीं करता है, बस एक स्ट्रिंग बिना सीमांकक के।
मैं प्रयोग करूँगा String#tr
:
"1,112".tr(',','').to_i # => 1112