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:
javascriptlet str = '1 23 456 xax';
let res = str.replace(/(\d+)/g, '($1)');
Nəticədə dəyişənə aşağıdakı yazılacaq:
javascript'(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:
javascriptlet 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:
javascript'!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.
javascriptlet 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:
javascript'bbb@aaa ddd@ccc'
Praktiki məsələlər
Sətir verilib:
javascriptlet 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:
javascriptlet str = '31.12.2025';
Bu tarixi '2025.12.31' formatına çevirin.