Обратна коса црта во низи на регуларни изрази во JavaScript
Во низи со регуларни изрази треба да се ескапира (всушност да се удвои) обратната коса црта. Да погледнеме на пример. Нека имаме следната низа:
let str = 'xyz';
Нека имаме следниот код со регуларен израз:
let reg = /\w+/;
let res = str.match(reg);
Ајде да го претвориме регуларниот израз во низа. Во овој случај ќе настанат проблеми со обратната коса црта:
let reg = new RegExp('\w+'); // не работи
let res = str.match(reg);
За решавање на проблемот удвојуваме обратна коса црта:
let reg = new RegExp('\\w+'); // работи
let res = str.match(reg);
Практични задачи
Претворете го регуларниот израз во низа:
let str = 'x1y x12y x123y';
let reg = /x\d+y/;
let res = str.replace(reg, '!');
Претворете го регуларниот израз во низа:
let str = 'x.y xay xby';
let reg = /x\.y/;
let res = str.replace(reg, '!');
Претворете го регуларниот израз во низа:
let str = 'x\\y';
let reg = /x\\y/;
let res = str.replace(reg, '!');