Групе у методу replace у регуларним изразима JavaScript

При раду са методом replace, ако нешто ставимо у групу у регуларном изразу, онда у стрингу за замену можемо убацити садржај те групе написавши знак долара $ и број групе. На пример, $1 - прва група, $2 - друга група и тако даље.

Зашто је ово потребно и како се користи погледајмо на примерима.

Пример

Хајде да нађемо све бројеве и уместо њих убацимо те исте бројеве, али у заградама. За ово све пронађене бројеве ћемо заменити на њих саме, али у заградама:

javascriptlet str = '1 23 456 xax';
let res = str.replace(/(\d+)/g, '($1)');

Као резултат у променљиву ће се уписати следеће:

javascript'(1) (23) (456) xax'

Пример

Хајде да нађемо све стрингове који представљају бројеве са 'x' око њих и заменимо те бројеве њима самима, али са '!' знацима око:

javascriptlet str = 'x1x x23x x456x xax';
let res = str.replace(/x(\d+)x/g, '!$1!');

Као резултат у променљиву ће се уписати следеће:

javascript'!1! !23! !456! xax'

Пример

Хајде да решимо следећи задатак: дати су стрингови у облику 'aaa@bbb' - слова, па мајмун, па слова. Потребно је да заменимо места словама пре @ и после.

javascriptlet str = 'aaa@bbb ccc@ddd';
let res = str.replace(/([a-z]+)@([a-z]+)/g, '$2@$1');

Као резултат у променљиву ће се уписати следеће:

javascript'bbb@aaa ddd@ccc'

Практични задаци

Задание 1

Дат је стринг:

javascriptlet str = '12 34 56 78';

Замените места цифрама у свим двоцифреним бројевима.

Задание 2

Дат је стринг са датумом:

javascriptlet str = '31.12.2025';

Преобразите овај датум у '2025.12.31'.