JavaScript regular ifadelerinde replace metodunda gapjyklar

replace metoda işläp, regular ifadede gapjyk goýsaňyz, çalşyryş setirinde bu gapjygyň mazmunyny dollaryň ýadyryjyşy $ we gapjygyň nomery ýazylyp goýup bilersiňiz. Mysal üçin, - birinji gapjyk, - ikinji gapjyk we şuňuň ýaly.

Bu näme üçin gerek we ony nädip ulanmalydygyny mysallar bilen göreliň.

Mysal

Ähli sanlary tapalyň we olaryň ýerine şol sanlary, ýöne töwerek möýjenlerde goýalyň. Bunuň üçin tapylan ähli sanlary olaryň özleri bilen çalyşarys, ýöne möýjenlerde:

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

Netijede üýtgeýjide şu ýazylar:

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

Mysal

Her tarapynda "iks" bolan we sanlary öz içine alýan ähli setirleri tapalyň we şol sanlary olaryň özleri bilen çalyşalyň, ýöne '!' nyşanlary bilen:

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

Netijede üýtgeýjide şu ýazylar:

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

Mysal

Indiki meseläni çözeliň: görnüşi 'aaa@bbb' bolan setirler berlen - harp, soňra @, soňra harp. Biz @ iň öňündäki we soňundaky harplaryň ýerlerini çalşyrmaly.

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

Netijede üýtgeýjide şu ýazylar:

javascript'bbb@aaa ddd@ccc'

Amaly meseläler

Задание 1

Setir berlen:

javascriptlet str = '12 34 56 78';

Ähli iki sanly sanlaryň sanlarynyň ýerlerini çalşyryň.

Задание 2

Sene bilen setir berlen:

javascriptlet str = '31.12.2025';

Bu senäni '2025.12.31' görnüşine öwüriň.