Обратна коса црта во низи на регуларни изрази во 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, '!');