JavaScript'теги регулярдуу жолдордогу керти сызык

Регулярдуу жолдордо керти сызыктарды экранирлөө керек (негизинен эки эсе көбөйтүү). Келгиле, мисал аркылуу карап чыгалы. Бизде төмөнкүдөй жол бар деп коёлу:

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, '!');