मैं बस रुबी की कोशिश कर रहा था और मैं String#to_i
पर आया था। मान लीजिए मैं इस कोड है:रूबी की स्ट्रिंग # to_i कभी-कभी 0 को वापस क्यों करती है जब स्ट्रिंग में कोई संख्या होती है?
var1 = '6 sldasdhkjas'
var2 = 'aljdfldjlfjldsfjl 6'
क्यों puts var1.to_i
उत्पादन 6
जब puts var2.to_i
0
देता है?
तो इसका मतलब है कि अगर शुरुआत में गैर-पूर्णांक चरित्र है स्ट्रिंग, to_i बाकी स्ट्रिंग को अनदेखा कर देगा? – hsinxh
बिल्कुल, यदि स्ट्रिंग एक गैर-पूर्णांक चरित्र से शुरू होती है तो यह तुरंत पार्सिंग बंद कर देती है और 0 को वापस लौटाती है, जो स्ट्रिंग में बाद में आने वाली किसी भी संख्या को अनदेखा कर सकती है। – DarkDust
यह पूरी तरह से सच नहीं है - यह व्हाइटस्पेस वर्णों के माध्यम से विश्लेषण करेगा। "123" .to_i 123 के मूल्यांकन करेगा, जैसा कि एक टैब से शुरू होने वाली स्ट्रिंग होगी। –