जैसा कि सभी का उल्लेख है, यह एक "दिखावा" है। रूबी सिंटैक्स की तलाश असंभव है, और मैंने इसे अन्य प्रश्नों में पूछा है। प्रश्न के उस भाग का उत्तर यह है कि आप खोज करते हैं
asterisk in ruby syntax
Google में Google आपके लिए है, बस वही देखें जो आप शब्दों में देखते हैं।
किसी भी तरह, बहुत सारे रूबी कोड की तरह, यह कोड काफी घना है।
line.split(/=|;/)
छह तत्वों की एक सरणी में आता है first_name, mickey, last_name, mouse, country, usa
। फिर उस हाश में बनाने के लिए चोंच का उपयोग किया जाता है। अब रूबी लोग आपको हमेशा स्पैट विधि को देखने के लिए भेजते हैं, क्योंकि रूबी में सब कुछ उजागर होता है। मुझे पता नहीं है कि यह कहाँ है, लेकिन एक बार जब आपके पास होता है, तो आप देखेंगे कि यह एक चलता हैfor
सरणी के माध्यम से और हैश बनाता है।
आप मूल दस्तावेज में कोड की तलाश करेंगे । अगर आपको यह नहीं मिल रहा है (मैं नहीं कर सकता), तो आप इस तरह से कुछ कोड लिखने की कोशिश करेंगे (जो काम करता है, लेकिन रूबी जैसा कोड नहीं है):
line = "first_name=mickey;last_name=mouse;country=usa"
presplat = line.split(/=|;/)
splat = Hash.new
for i in (0..presplat.length-1)
splat[presplat[i]] = presplat[i+1] if i%2==0
end
puts splat["first_name"]
और फिर रूबी गिरोह आपको यह बताने में सक्षम होगा कि आपका कोड मूर्खतापूर्ण, बुरा, या सिर्फ सादा गलत क्यों है।
यदि आपने इसे पढ़ा है, तो हैश के माध्यम से पढ़ें आरंभीकरण के लिए प्रलेखन के
मूल रूप से एक हैश जो कई तर्कों के साथ शुरू होता है, उन्हें प्रमुख मूल्य जोड़े बनाता है:
Hash["a", 100, "b", 200] #=> {"a"=>100, "b"=>200}
तो आपके उदाहरण में यह निम्नलिखित हैश की ओर ले जाएगा:
{"first_name"=>"mickey", "last_name"=>"mouse", "county"=>"usa"}
a,b,*c = d,e,f,*g
a = d, b = e, और c = [f, g0, g1, g2, ..., gn], जहाँ g = [g0, g1, g2, ..., gn]