जावास्क्रिप्ट का रिप्लेस फ़ंक्शन केवल पहले इंस्टेंस को ही क्यों बदलता है
जावास्क्रिप्ट में रिप्लेस() का उपयोग करते समय, आपको ऐसी स्थिति का सामना करना पड़ सकता है जहां यह केवल पहले इंस्टेंस को रिप्लेस करता है लक्ष्य स्ट्रिंग का पहला उदाहरण। यह स्पष्ट असंगतता फ़ंक्शन के डिफ़ॉल्ट व्यवहार से उत्पन्न होती है। एक स्ट्रिंग के भीतर. यदि आप सभी उदाहरणों को प्रतिस्थापित करना चाहते हैं, तो आपको नियमित अभिव्यक्ति में जी (वैश्विक) ध्वज निर्दिष्ट करना होगा।
उदाहरण: जी ध्वज सेट करना
उदाहरण पर विचार करें प्रश्न में प्रदान किया गया:
var date = $('#Date').val(); // मान प्राप्त होता है "12/31/2009" var id = 'c_' date.replace("/", ''); // केवल पहले "/" को प्रतिस्थापित करता है, जिसके परिणामस्वरूप "c_1231/2009" होता हैफॉरवर्ड स्लैश (/) के सभी उदाहरणों को बदलने के लिए, जी ध्वज का उपयोग करें:
var id = ' c_' date.replace(new RegExp("/", "g"), ''); // सभी "/" को "" से बदल देता है, जिसके परिणामस्वरूप "c_12312009" होता है
var date = $('#Date').val(); // Gets value "12/31/2009" var id = 'c_' date.replace("/", ''); // Replaces only the first "/", resulting in "c_1231/2009"
var id = 'c_' date.replace(/\/ /जी, ''); // पिछली पंक्ति के समतुल्य
var id = 'c_' date.replace(new RegExp("/", "g"), ''); // Replaces all "/" with "", resulting in "c_12312009"
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3