Ruby Academy · पाठ

case/in की मूल बातें

Structural matching

पाठ 1, कुल 4 में से13 चरण

case/in की मूल बातें, CoddyKit पर Ruby Academy का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Ruby Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Ruby Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

पैटर्न मिलान का आगमन

रूबी का case/in एक्सप्रेशन संरचनात्मक पैटर्न मिलान करता है: यह केवल समानता नहीं, बल्कि डेटा के आकार और सामग्री की जाँच करता है। यह case/when का शक्तिशाली उन्नत रूप है।

case 42
in Integer
  puts 'it is an integer'
end

case/in बनाम case/when

case/when === से तुलना करता है (समानता-आधारित)। case/in मानों को विघटित कर सकता है और चर बाँध सकता है। संरचना के मिलान के लिए in का उपयोग करें।

case 'hello'
in String => s
  puts "string of length #{s.length}"
end

शाब्दिक मानों का मिलान

in शाखा किसी शाब्दिक मान से मिलान कर सकती है और सटीक समानता-जाँच की तरह काम करती है।

case 3
in 1 then puts 'one'
in 3 then puts 'three'
in _ then puts 'other'
end

प्रकार के पैटर्न

किसी वर्ग का नाम देने पर उस प्रकार के किसी भी मान से मिलान होता है; पर्दे के पीछे === का उपयोग किया जाता है।

def describe(x)
  case x
  in Integer then 'number'
  in String then 'text'
  in Array then 'list'
  end
end
puts(describe([1, 2]))

चरों को बाँधना

पैटर्न में बिना किसी विशेष चिह्न वाला पहचानकर्ता बाँधता है: मिलान किए गए मान को एक नए चर में रखता है, जिसका उपयोग शाखा में किया जा सकता है।

case [1, 2]
in [a, b]
  puts(a + b)
end

वाइल्डकार्ड

अंडरस्कोर _ बिना बाँधे किसी भी चीज़ से मिलान करता है। इसे सभी मामलों के लिए या कुछ स्थानों को अनदेखा करने के लिए उपयोग करें।

case 99
in 0 then puts 'zero'
in _ then puts 'something else'
end

पिन ऑपरेटर

किसी मौजूदा चर के मान से मिलान करने के लिए (नया चर बाँधने के बजाय), उसे ^ से पिन करें।

expected = 5
case 5
in ^expected
  puts 'matched the pinned value'
end

वैकल्पिक पैटर्न

एक ही शाखा में कई विकल्पों में से किसी से मिलान करने के लिए पैटर्न को | से जोड़ें।

case 'b'
in 'a' | 'b' | 'c'
  puts 'in the first three letters'
end

पूरे मिलान को बाँधना

पैटर्न की जाँच करने और मिले हुए मान को उसी समय किसी नाम से बाँधने के लिए pattern => name का उपयोग करें।

case 'Ruby'
in String => word
  puts(word.upcase)
end

NoMatchingPatternError

यदि कोई in शाखा मेल नहीं खाती और else भी नहीं है, तो रूबी NoMatchingPatternError उठाता है। शेष मामलों को सुरक्षित रूप से संभालने के लिए else जोड़ें।

case 10
in 1 then puts 'one'
else
  puts 'no specific match'
end

एक-पंक्ति मिलान

=> ऑपरेटर एक-पंक्ति में दाईं ओर असाइनमेंट-मिलान करता है और विफल होने पर त्रुटि उठाता है। इसके बजाय in ऑपरेटर true/false लौटाता है।

result = [1, 2] in [Integer, Integer]
puts result

त्वरित जाँच

यदि case/in में कोई मिलान करने वाली शाखा और else दोनों न हों, तो क्या होता है?

पुनरावलोकन: case/in की मूल बातें

आपने संरचनात्मक मिलान की मूल बातें सीखीं:

  • case/in केवल समानता नहीं, आकार का मिलान करता है
  • शाब्दिक मान, प्रकार के पैटर्न और _ वाइल्डकार्ड
  • चर बाँधना और पिन ऑपरेटर ^
  • | और pattern => name से विकल्प
  • मिलान न मिलने पर NoMatchingPatternError उठता है
case 7
in Integer => n then puts(n * 2)
end
शुरुआत निःशुल्क

एआई शिक्षक के साथ Ruby सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
29
पाठ
109

अक्सर पूछे जाने वाले प्रश्न

क्या “case/in की मूल बातें” पाठ निःशुल्क है?

हाँ — Ruby Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “case/in की मूल बातें” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Ruby Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“case/in की मूल बातें” में मैं क्या सीखूँगा?

Structural matching आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Ruby Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Ruby Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Ruby Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।

“case/in की मूल बातें” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Ruby Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Ruby Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. case/in की मूल बातें
  2. Array और Hash Patterns
  3. Find Patterns और Guards
  4. व्यावहारिक उपयोग के मामले
← Ruby Academy पर वापस जाएँ