जावास्क्रिप्ट में रेगुलर एक्सप्रेशन के उपयोग का अनुकूलन
रेगुलर एक्सप्रेशन बहुत भारी और अपेक्षाकृत धीमी गति से काम करने वाली चीज है। जब कोई वैकल्पिक समाधान होता है, तो उसी का उपयोग करना वांछनीय है।
आइए एक उदाहरण देखें। मान लीजिए कि हमें यह जांचना है कि कोई स्ट्रिंग विस्मयादिबोधक चिह्न से शुरू होती है या नहीं। किसी प्रोग्रामर ने इस कार्य को रेगुलर एक्सप्रेशन के माध्यम से हल किया:
let str = '!123';
if (/^!/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
हालाँकि, इस कार्य का बहुत अधिक तेजी से काम करने वाला समाधान है:
let str = '!123';
if (str[0] == '!') {
console.log('+++');
} else {
console.log('---');
}
निम्नलिखित कोड स्ट्रिंग में
सबस्ट्रिंग '33' की उपस्थिति की जांच करता है।
अनुकूलन करें:
let str = '123345';
if (/33/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
निम्नलिखित कोड जांचता है कि क्या
स्ट्रिंग '.html' पर समाप्त होती है।
अनुकूलन करें:
let str = 'index.html';
if (/\.html$/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
निम्नलिखित कोड अंतिम रिक्त स्थानों को हटाता है। अनुकूलन करें:
let str = ' text ';
let res = str.replace(/^\s+|\s+$/g, '');
console.log(res);