कहो मैं इस तरह एक सरणी का निर्माण:
: 001 & gt; धारक = "यह.फ़ाइल। Q99P84.Is.Awesome" = & gt; "यह.फ़ाइल। Q99P84.Is.Awesome": 002 & gt; नाम = धारक.split ("।") = & Gt; अब, मैं कर सकता हूँ: नाम ["यह", "फ़ाइल", "Q99P84", "है", "बहुत बढ़िया"] 2] .include? 'Q99P84' के बजाय 'Q99P84' में डालने के बजाय मैं 'क्यू' के लिए कुछ तरह के प्रतीक में डालना चाहता हूं, जिसके बाद संख्या के लिए प्रतीक, संख्या के लिए प्रतीक, पी के लिए प्रतीक, संख्या के लिए प्रतीक, संख्या के लिए प्रतीक
ऐसा .include? फ़ंक्शन गतिशील हो जाएगा इसलिए किसी भी फ़ाइल का नाम मैं लोड करता है जो ## पी ## है, वह true वापस करेगा। मुझे पूरा यकीन है कि यह संभवतः मुझे पता नहीं है कि वास्तव में क्या खोजना है । यदि आप उत्तर जानते हैं तो आप मुझे दस्तावेज़ में लिंक कर सकते हैं।
ऐसा करने का एक तरीका नियमित अभिव्यक्तियों (लघुकरण के लिए 'regex') के माध्यम से है। जानकारी के दो अच्छे स्रोत हैं और जो रूबी केंद्रित हैं।
एक स्ट्रिंग पर regex का उपयोग करने का एक तरीका विधि है:
नाम [2] .मेल (/ क्यू \ डी \ डीपी \ डी \ डी /) अंकों के लिए खड़ा है / यह एक स्ट्रिंग लौटाएगा अगर कोई मैच होगा और यह शून्य अगर नहीं है "Q42P67" .मेल (/ क्यू \ d \ dp \ d \ d /) # = & gt; "Q42P67" "H33P55"। मिलान (/ क्यू \ डी \ डीपी \ d \ d /) # = & gt; शून्य यह एक स्ट्रिंग के बाद से एक अगर स्थिति में मददगार होता है तो 'सत्य' होता है और शून्य है 'झूठा'। मुझे आशा है कि जब तक आप अपने अध्ययन में नियमित अभिव्यक्ति।
संपादित करें: ध्यान दें कि क्यू और पी में / क्यू \ d \ dp \ d \ d / कैपिटल अक्षर हैं यदि मामला जरूरी नहीं है, तो आप केस-असंवेदनशीलता के लिए 'आई' जोड़ सकते हैं। / क्यू \ d \ dP \ d \ d / i "Q42P67" और "q42p67" पर कब्जा करेगा
No comments:
Post a Comment