JavaScript regular ifadələrində replace metodunda qruplar
replace metodu ilə işləyərkən, əgər
biz regular ifadədə bir şeyi qrupa qoysaq,
onda əvəzetmə sətirində bu qrupun məzmununu
dollar işarəsi $ və qrup nömrəsini
yazmaqla əlavə edə bilərik. Məsələn, $1 - birinci
qrup, $2 - ikinci qrup və s.
Bunun nə üçün lazım olduğunu və necə istifadə ediləcəyini nümunələr üzərində nəzərdən keçirək.
Nümunə
Gəlin bütün rəqəmləri tapaq və onların yerinə eyni rəqəmləri, lakin dairəvi mötərizələr içərisində əlavə edək. Bunun üçün tapılan bütün rəqəmləri onların özü ilə, lakin mötərizədə əvəz edəcəyik:
let str = '1 23 456 xax';
let res = str.replace(/(\d+)/g, '($1)');
Nəticədə dəyişənə aşağıdakı yazılacaq:
'(1) (23) (456) xax'
Nümunə
Gəlin ətrafında 'x' olan bütün rəqəm sətirlərini
tapaq və bu rəqəmləri onların özü ilə, lakin
ətrafında '!' işarələri olmaqla əvəz edək:
let str = 'x1x x23x x456x xax';
let res = str.replace(/x(\d+)x/g, '!$1!');
Nəticədə dəyişənə aşağıdakı yazılacaq:
'!1! !23! !456! xax'
Nümunə
Gəlin aşağıdakı məsələni həll edək: 'aaa@bbb' formasında sətirlər verilib
- hərflər, sonra @ işarəsi, sonra hərflər. @ işarəsindən əvvəlki və sonrakı hərfləri
yerdəyişmək lazımdır.
let str = 'aaa@bbb ccc@ddd';
let res = str.replace(/([a-z]+)@([a-z]+)/g, '$2@$1');
Nəticədə dəyişənə aşağıdakı yazılacaq:
'bbb@aaa ddd@ccc'
Praktiki məsələlər
Sətir verilib:
let str = '12 34 56 78';
Bütün iki rəqəmli ədədlərdə rəqəmlərin yerini dəyişin.
Tarixi olan sətir verilib:
let str = '31.12.2025';
Bu tarixi '2025.12.31' formatına çevirin.