जावास्क्रिप्ट में रेगुलर एक्सप्रेशन स्ट्रिंग्स में बैकस्लैश

रेगुलर एक्सप्रेशन वाली स्ट्रिंग्स में बैकस्लैश को एस्केप करना होता है (वास्तव में दोगुना करना)। आइए एक उदाहरण देखें। मान लीजिए कि हमारे पास निम्नलिखित स्ट्रिंग है:

javascriptlet str = 'xyz';

मान लीजिए कि हमारे पास रेगुलर एक्सप्रेशन वाला निम्नलिखित कोड है:

javascriptlet reg = /\w+/;
let res = str.match(reg);

आइए रेगुलर एक्सप्रेशन को स्ट्रिंग में बदलें। इस स्थिति में हमें बैकस्लैश के साथ समस्या उत्पन्न होगी:

javascriptlet reg = new RegExp('\w+'); // काम नहीं करता
let res = str.match(reg);

समस्या के समाधान के लिए बैकस्लैश को दोगुना कर दें:

javascriptlet reg = new RegExp('\\w+'); // काम करता है
let res = str.match(reg);

व्यावहारिक समस्याएं

Задание 1

रेगुलर एक्सप्रेशन को स्ट्रिंग में बदलें:

javascriptlet str = 'x1y x12y x123y';
let reg = /x\d+y/;
let res = str.replace(reg, '!');
Задание 2

रेगुलर एक्सप्रेशन को स्ट्रिंग में बदलें:

javascriptlet str = 'x.y xay xby';
let reg = /x\.y/;
let res = str.replace(reg, '!');
Задание 3

रेगुलर एक्सप्रेशन को स्ट्रिंग में बदलें:

javascriptlet str = 'x\\y';
let reg = /x\\y/;
let res = str.replace(reg, '!');