Find Patterns और Guards
Matches में conditions
Find Patterns और Guards, CoddyKit पर Ruby Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Ruby Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Ruby Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
गार्ड शर्तें
किसी पैटर्न में if या unless गार्ड जोड़ें। शाखा तभी मेल खाती है जब पैटर्न और शर्त दोनों सफल हों।
case 7
in Integer => n if n.odd?
puts 'odd integer'
endगार्ड बँधे हुए चरों का उपयोग करते हैं
गार्ड पैटर्न द्वारा बाँधे गए चरों का संदर्भ ले सकता है, इसलिए आप मिले हुए डेटा के बारे में विस्तृत शर्तें व्यक्त कर सकते हैं।
case [4, 9]
in [a, b] if a < b
puts 'ascending pair'
endunless गार्ड
unless गार्ड तब मेल खाता है जब शर्त गलत हो; यह if का उलटा है।
case 0
in Integer => n unless n.positive?
puts 'zero or negative'
endएकाधिक गार्ड वाली शाखाएँ
स्पष्ट निर्णय-क्रम बनाने के लिए अलग-अलग शाखाओं में गार्ड जोड़ें।
def grade(score)
case score
in Integer => s if s >= 90 then 'A'
in Integer => s if s >= 70 then 'B'
else 'C'
end
end
puts(grade(85))खोज पैटर्न
खोज पैटर्न [*, x, *] किसी ऐरे में उप-पैटर्न को उसके अंदर कहीं भी खोजता है और दोनों सिरों पर स्प्लैट का उपयोग करता है।
case [1, 2, 3, 4]
in [*, 3, *]
puts 'contains a 3'
endखोज के भीतर बाँधना
खोज पैटर्न में मिले हुए तत्व को बाँधा जा सकता है, जिससे खोजा गया मान कैप्चर हो जाता है।
case [10, 20, 30]
in [*, x, *] if x > 25
puts("found #{x}")
endआसपास के तत्वों को कैप्चर करना
खोज पैटर्न में दोनों स्प्लैट को नाम दिया जा सकता है, ताकि मिलान से पहले और बाद के तत्व कैप्चर किए जा सकें।
case [1, 2, 99, 4, 5]
in [*before, 99, *after]
p before
p after
endकिसी प्रकार वाले तत्व को खोजना
किसी दिए गए प्रकार का पहला तत्व खोजने के लिए खोज पैटर्न को प्रकार के पैटर्न के साथ जोड़ा जा सकता है।
case [1, 'hi', 2]
in [*, String => word, *]
puts(word)
endगार्ड बनाम पैटर्न
जो कुछ संरचनात्मक रूप से व्यक्त किया जा सकता है, उसे पैटर्न में व्यक्त करें। गार्ड का उपयोग केवल उन शर्तों के लिए करें जिन्हें पैटर्न व्यक्त नहीं कर सकते, जैसे संख्यात्मक तुलनाएँ या विधि-कॉल।
case { role: 'admin', age: 40 }
in { role: 'admin', age: } if age >= 18
puts 'adult admin'
endखोज और गार्ड का संयोजन
खोज पैटर्न और गार्ड को साथ में उपयोग करके पूछा जा सकता है: क्या कोई तत्व इस शर्त को पूरा करता है?
numbers = [3, 5, 8, 11]
case numbers
in [*, n, *] if n.even?
puts("first even-ish hit: #{n}")
endशाखाओं का क्रम
शाखाओं को ऊपर से नीचे तक आज़माया जाता है; पहला मिलान सफल होता है। अधिक विशिष्ट गार्ड वाले पैटर्न को सामान्य पैटर्न से पहले रखें।
case 100
in Integer => n if n > 50 then puts 'big'
in Integer then puts 'small'
endत्वरित जाँच
खोज पैटर्न [*, x, *] क्या करता है?
पुनरावलोकन: खोज पैटर्न और गार्ड
आपने मिलान में शर्तें और खोज जोड़ना सीखा:
- गार्ड
if/unlessकिसी पैटर्न को और सटीक बनाते हैं - गार्ड बँधे हुए चरों का उपयोग कर सकते हैं
- खोज पैटर्न
[*, x, *]कहीं भी खोज करते हैं - आसपास के तत्वों को कैप्चर करने के लिए दोनों स्प्लैट को नाम दिया जा सकता है
- पहली मिलान करने वाली शाखा सफल होती है, इसलिए क्रम महत्वपूर्ण है
case [1, 7, 3]
in [*, x, *] if x > 5 then puts x
endएआई शिक्षक के साथ Ruby सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 29
- पाठ
- 109
अक्सर पूछे जाने वाले प्रश्न
क्या “Find Patterns और Guards” पाठ निःशुल्क है?
हाँ — Ruby Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “Find Patterns और Guards” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Ruby Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“Find Patterns और Guards” में मैं क्या सीखूँगा?
Matches में conditions आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Ruby Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Ruby Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Ruby Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।
“Find Patterns और Guards” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Ruby Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Ruby Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- case/in की मूल बातें
- Array और Hash Patterns
- Find Patterns और Guards
- व्यावहारिक उपयोग के मामले