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