Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Javascript

जावास्क्रिप्ट के साथ स्ट्रिंग्स के अंदर व्हाइट स्पेस को कैसे बदलें (RegEx का उपयोग करके)

रेगेक्स (रेगुलर एक्सप्रेशन) का उपयोग करके स्ट्रिंग्स के अंदर सफेद स्थान को जावास्क्रिप्ट से बदलने का तरीका जानें - टेक्स्ट के भीतर पैटर्न खोजने के लिए एक उपकरण।

रेगेक्स (अक्सर "RegEx या "RegExp" लिखा जाता है) स्ट्रिंग्स (पाठ) के साथ काम करने के लिए एक प्रदर्शनकारी उपकरण है। रेगेक्स सबसे आम उपयोग के मामले हैं:

  • पाठ सत्यापन
  • पाठ्य खोज

आज आप एक साधारण उदाहरण से सीखेंगे जो टेक्स्ट की एक पंक्ति (स्ट्रिंग) में सभी सफेद स्थान को कुछ नहीं से बदलने के लिए रेगेक्स का उपयोग करता है। - लेकिन आप सफेद स्थान को अन्य वर्णों से बदलने के लिए निम्न कोड उदाहरण का उपयोग कर सकते हैं।

सफेद स्थान को एक चरित्र माना जाता है। तो इस वाक्य में शब्दों के बीच का हर स्पेस जो आप अभी पढ़ रहे हैं, उसे एक व्हाइट स्पेस कैरेक्टर के रूप में गिना जाता है।

इस वाक्य में 6 रिक्त स्थान वर्ण हैं।

श्वेत स्थान वर्णों को बदलने के लिए, रेगेक्स में एक तथाकथित मेटा-कैरेक्टर . है \s called कहा जाता है जो न्यूलाइन, टैब्स और यूनिकोड सहित सिंगल व्हाइट स्पेस कैरेक्टर की तलाश करता है।

इस तरह:

const sentence = "This sentence has 6 white space characters."
const sentenceRemoveWhiteSpace = sentence.replace(/\s/g, "")

console.log(sentenceRemoveWhiteSpace)
// Thissentencehas6whitespacecharacters.

कोड में क्या हो रहा है:

  • सबसे पहले, हम संलग्न करते हैं replace() sentence . की विधि वेरिएबल जो उस स्ट्रिंग को संदर्भित करता है जिससे हम सफेद स्थान को हटाना चाहते हैं।
  • फिर उपरोक्त \sजोड़ें मेटा कैरेक्टर व्हाइट स्पेस कैरेक्टर खोजने के लिए एक तर्क के रूप में। क्योंकि बैकस्लैश (\ ) एक आरक्षित एस्केप . है जावास्क्रिप्ट में वर्ण, हम / . जोड़ते हैं इसके सामने अनस्केप यह, तो यह /\s/ becomes बन जाता है ।
  • तब हम वैश्विक g . का उपयोग करते हैं ध्वज, जो जावास्क्रिप्ट को बताता है कि हम सभी को खोजना चाहते हैं स्ट्रिंग से सफेद स्थान वर्ण। अगर आप g नहीं जोड़ते हैं , केवल पहला व्हाइट स्पेस इंस्टेंस (This sentence . के बीच) ) को बदल दिया जाएगा।
  • आखिरकार, हम वाइट स्पेस को किसके साथ बदल रहे हैं? कोई भी खाली स्ट्रिंग "" यह वही है जो सफेद स्थान के पात्रों को हटा देता है और प्रत्येक शब्द को एक शब्द में चिपका देता है।

नोट:हमने मूल sentence को संशोधित नहीं किया है ऐसा करने से, हम केवल console.log() . का उपयोग कर रहे हैं अगर आप replace(/\s/g, "") का उपयोग करते हैं तो यह प्रिंट करने के लिए कि यह कैसा दिखेगा उस पर रेगेक्स विधि।

यदि आप sentence का मान बदलना चाहते हैं चर में कोई सफेद स्थान नहीं है, आपको इसे एक नए चर के लिए निर्दिष्ट करने की आवश्यकता है, और फिर उस चर को अभी से संदर्भित करें जब आपको उस तक पहुंच की आवश्यकता हो।

इस तरह:

const sentence = "This sentence has 6 white space characters."
const sentenceRemoveWhiteSpace = sentence.replace(/\s/g, "")

console.log(sentenceRemoveWhiteSpace)
// Thissentencehas6whitespacecharacters.

और यह सुनिश्चित करने के लिए कि मेरा गणित सही है, आइए एक अन्य उपयोगी रेगेक्स विधि का उपयोग करें जिसे match() कहा जाता है। मूल sentence . में व्हाइट स्पेस वर्णों की संख्या गिनने के लिए परिवर्तनशील और देखें कि क्या यह वास्तव में 6 है:

console.log(sentence.match(/\s/g).length)
// 6

ओह, यह है!


  1. जावास्क्रिप्ट का उपयोग करके उच्चारण वर्णों के साथ तारों को कैसे क्रमबद्ध करें?

    जावास्क्रिप्ट में उच्चारण वर्णों के साथ स्ट्रिंग्स को सॉर्ट करने के लिए कोड निम्नलिखित है - उदाहरण दस्तावेज़ बॉडी { फॉन्ट-फ़ैमिली:सेगो यूआई, ताहोमा, जिनेवा, वर्दाना, सेन्स-सेरिफ़; } .result,.sample {फ़ॉन्ट-आकार:18पीएक्स; फ़ॉन्ट-वजन:500; रंग:नीला बैंगनी}। नमूना {रंग:लाल; }उच्चारण वर्णों के साथ स्ट्रि

  1. जावा रेगेक्स का उपयोग करके एक ही स्थान का उपयोग करके स्ट्रिंग में एकाधिक रिक्त स्थान कैसे बदलें?

    मेटाकैरेक्टर “\\s” रिक्त स्थान से मेल खाता है और + एक या अधिक बार रिक्त स्थान की घटना को इंगित करता है, इसलिए, नियमित अभिव्यक्ति \\S+ सभी स्पेस वर्णों (एकल या एकाधिक) से मेल खाती है। इसलिए, एकाधिक रिक्त स्थान को एक ही स्थान से बदलने के लिए। उपरोक्त रेगुलर एक्सप्रेशन के साथ इनपुट स्ट्रिंग का मिलान क

  1. जावा रेगेक्स का उपयोग करके एक सफेद स्थान के बराबर कैसे मिलान करें?

    मेटाकैरेक्टर \\s दिए गए स्ट्रिंग में रिक्त स्थान के वर्णों से मेल खाता है। उदाहरण 1 आयात करें .out.println (एक स्ट्रिंग दर्ज करें); स्कैनर एससी =नया स्कैनर (System.in); स्ट्रिंग इनपुट =sc.nextLine (); स्ट्रिंग रेगेक्स =\\ s; // नियमित अभिव्यक्ति का संकलन पैटर्न पैटर्न =Pattern.compile(regex); // मै