कोड लिखते समय, विशिष्ट कार्यों को पूरा करने के लिए एक डेवलपर को अक्सर दो स्ट्रिंग्स की तुलना करने की आवश्यकता हो सकती है। स्ट्रिंग्स की तुलना उनके मामलों पर ध्यान दिए बिना की जाती है जैसे कि कैपिटल और लोअरकेस लेटर्स को केस-असंवेदनशील तुलना के रूप में जाना जाता है। कई भाषाएं केस संवेदनशीलता और असंवेदनशीलता के साथ स्ट्रिंग तुलना का समर्थन करती हैं।
यह लेख जावास्क्रिप्ट में स्ट्रिंग्स की केस-असंवेदनशील तुलना के तरीकों का वर्णन करेगा।
जावास्क्रिप्ट में असंवेदनशील स्ट्रिंग तुलना कैसे करें?
जावास्क्रिप्ट में स्ट्रिंग्स की केस-असंवेदनशील तुलना के लिए, निम्नलिखित पूर्वनिर्धारित विधियों का उपयोग करें:
-
- लोकेलकंपेयर () विधि
- toUpperCase () और toLowerCase () विधि
- परीक्षण () विधि के साथ नियमित अभिव्यक्ति
आइए उपरोक्त प्रत्येक दृष्टिकोण के कार्य को अलग से देखें।
विधि 1: LocaleCompare () विधि का उपयोग करके केस असंवेदनशील स्ट्रिंग तुलना
स्ट्रिंग्स की केस-असंवेदनशील तुलना 'का उपयोग करती है' लोकेल तुलना () ' तरीका। यह विधि एक संख्या (सकारात्मक, नकारात्मक या शून्य) लौटाती है। स्ट्रिंग्स की तुलना सॉर्टिंग क्रम में की जाती है, यदि संदर्भ स्ट्रिंग तुलना स्ट्रिंग से लंबी है या यह तुलना स्ट्रिंग के बाद आती है, तो यह एक सकारात्मक संख्या देती है। यदि संदर्भ स्ट्रिंग छोटा है, या तुलना स्ट्रिंग से पहले आता है, तो यह एक ऋणात्मक संख्या देता है। यदि संदर्भ स्ट्रिंग तुलना की गई स्ट्रिंग के बराबर है, तो शून्य लौटाया जाना चाहिए।
वाक्य - विन्यास
localeCompare() विधि के लिए दिए गए सिंटैक्स का पालन करें:
string1.localeतुलना करें ( string2, स्थान, विकल्प )
यहां,
-
- ' स्ट्रिंग2 'तुलना स्ट्रिंग है, जहां स्ट्रिंग 1 की तुलना की जाएगी।
- ' स्थानीय 'भाषा टैग है।
- ' विकल्प ' इसके साथ काम करते समय उपयोगकर्ता द्वारा प्रदान की गई लोकेल हैं।
उदाहरण
दो तार बनाएँ ” स्ट्रिंग1 ' तथा ' स्ट्रिंग2 ', तार के साथ' लिनक्सहिंट ' तथा ' लिनक्ससंकेत ' क्रमश:
वर स्ट्रिंग1 = 'लिनक्स' ;वर स्ट्रिंग2 = 'लिनक्स संकेत' ;
स्ट्रिंग 1 की तुलना स्ट्रिंग 2 के साथ 'का उपयोग करके करें' लोकेल तुलना () 'विधि और परिणाम को एक चर में संग्रहीत करें' कंप्यूटर अनुप्रयोग ' विधि का तीसरा तर्क 'के रूप में सेट होगा' संवेदनशीलता: 'आधार' ' जो इंगित करता है कि तुलना किए गए तार आधार अक्षर अलग नहीं हैं:
सशर्त विवरण में, जांचें कि क्या localeCompare () विधि का लौटा हुआ मान शून्य के बराबर है, यह प्रिंट करता है ' तार बराबर हैं ', वरना, ' तार बराबर नहीं हैं ':
कंसोल.लॉग ( 'स्ट्रिंग बराबर हैं' ) ;
} वरना {
कंसोल.लॉग ( 'स्ट्रिंग बराबर नहीं हैं' ) ;
}
उत्पादन
विधि 2: केस असंवेदनशील स्ट्रिंग तुलना toUpperCase () और toLowerCase () विधि का उपयोग करना
केस असंवेदनशील स्ट्रिंग्स की तुलना करने के लिए सबसे अधिक इस्तेमाल किया जाने वाला तरीका toUpperCase () विधि या toLowerCase () विधि है। वे स्ट्रिंग्स को अपरकेस या लोअरकेस में बदलते हैं और फिर सख्त समानता ऑपरेटरों की मदद से उनकी तुलना करते हैं।
वाक्य - विन्यास
toUpperCase() विधि के लिए, निम्न विधि का उपयोग करें:
string.toUpperCase ( ) ;
ToLowerCase() विधि के लिए नीचे दिए गए सिंटैक्स का उपयोग करें।
उदाहरण: केस असंवेदनशील स्ट्रिंग तुलना toUpperCase () विधि का उपयोग कर
उपरोक्त बनाए गए तारों पर विचार करें ' स्ट्रिंग1 ' तथा ' स्ट्रिंग2 ' और फिर सख्त समानता ऑपरेटर के साथ toUpperCase () विधि का उपयोग करके उनकी तुलना करें:
यदि ( string1.toUpperCase ( ) === string2.toUpperCase ( ) ) {कंसोल.लॉग ( 'स्ट्रिंग बराबर हैं' ) ;
} वरना {
कंसोल.लॉग ( 'स्ट्रिंग बराबर नहीं हैं' ) ;
}
आउटपुट इंगित करता है कि मामले को अनदेखा करके दोनों तार बराबर हैं:
उदाहरण: केस असंवेदनशील स्ट्रिंग तुलना toLowerCase () विधि का उपयोग कर
यहां, स्ट्रिंग्स की तुलना toLowerCase () विधि का उपयोग करके की जाती है जो पहले स्ट्रिंग्स को लोअर केस में बदल देगी और फिर === ऑपरेटर का उपयोग करके उनकी तुलना करेगी:
यदि ( string1.toLowerCase ( ) === string2.toLowerCase ( ) ) {कंसोल.लॉग ( 'स्ट्रिंग बराबर हैं' ) ;
} वरना {
कंसोल.लॉग ( 'स्ट्रिंग बराबर नहीं हैं' ) ;
}
संबंधित आउटपुट होगा:
विधि 3: केस-असंवेदनशील स्ट्रिंग तुलना परीक्षण के साथ नियमित अभिव्यक्ति का उपयोग () विधि
पूर्वनिर्धारित जावास्क्रिप्ट ' परीक्षण() 'विधि, जो नियमित अभिव्यक्ति का उपयोग करती है, दो तारों की तुलना करने का एक और तरीका है। निर्दिष्ट रेगेक्स के आधार पर, यह निर्धारित करता है कि तार बराबर हैं या नहीं।
वाक्य - विन्यास
स्ट्रिंग्स की तुलना करने के लिए रेगुलर एक्सप्रेशन का उपयोग करने के लिए दिए गए सिंटैक्स का पालन करें:
रेगुलर एक्सप्रेशन ( डोरी, 'जी' )
यहां,
-
- ' रेगुलर एक्सप्रेशन ' के लिए खड़ा है ' नियमित अभिव्यक्ति '
- ' जी 'वैश्विक चर है जो सभी तारों की जांच करने की अनुमति देता है।
- ' मैं 'एक ध्वज चर है जो इंगित करता है कि पैटर्न से मेल खाने के लिए स्ट्रिंग का उपयोग करते समय किसी मामले को अनदेखा किया जाना चाहिए।
उदाहरण
सबसे पहले, एक स्ट्रिंग और रेगुलर एक्सप्रेशन को तर्क के रूप में पास करके RegExp () का एक नया ऑब्जेक्ट बनाएं:
वर COMP = नया RegExp ( स्ट्रिंग1, 'जी' ) ;
परीक्षण () विधि का उपयोग करके तारों की तुलना करें:
कंसोल.लॉग ( 'स्ट्रिंग बराबर हैं' ) ;
} वरना {
कंसोल.लॉग ( 'स्ट्रिंग बराबर नहीं हैं' ) ;
}
उत्पादन
निष्कर्ष
जावास्क्रिप्ट में केस असंवेदनशील स्ट्रिंग्स की तुलना करने के लिए, जावास्क्रिप्ट पूर्वनिर्धारित विधियों का उपयोग करें, जिसमें लोकेलकंपेयर () विधि, toUpperCase () और toLowerCase () विधि, या नियमित अभिव्यक्ति के साथ परीक्षण () विधि शामिल हैं। दो केस-असंवेदनशील स्ट्रिंग्स की तुलना करने के लिए 'toUpperCase () और toLowerCase ()' विधियाँ सबसे अधिक उपयोग की जाने वाली विधि हैं। इस लेख में जावास्क्रिप्ट में स्ट्रिंग्स की केस-असंवेदनशील तुलना के विभिन्न तरीकों का वर्णन किया गया है।