⊗jsSpRENPB 132 of 294 menu

JavaScript-da Qeyri-saxlayan Mötərizələr

Mötərizələr ( ) iki funksiya yerinə yetirir - simvolların qruplaşdırılması və qrup (capturing) funksiyası. Bəs biz qruplaşdırmaq istəyirik, amma qrupa salmaq istəmiriksə? Bu problemi həll etmək üçün xüsusi qeyri-saxlayan mötərizələr (?: ) ixtira edilmişdir - onlar qruplaşdırır, lakin qrupa salmır.

Nümunə

Aşağıdakı nümunədə birinci mötərizələr bizə qruplaşdırmaq üçün lazımdır, ikincilər isə - qrup üçün. Lakin, hər iki mötərizə məlumatı qrupa saxlayır:

let str = 'abab123'; let res = str.match(/(ab)+([1-9]+)/);

Nəticədə bizim qruplarımızda aşağıdakılar olacaq:

console.log(res[0]); // 'abab123' çap edəcək console.log(res[1]); // 'ab' çap edəcək console.log(res[2]); // '123' çap edəcək

Nümunə

Gəlin elə edək ki, birinci cüt mötərizə yalnız qruplaşdırsın, lakin qrupa salmasın:

let str = 'abab123'; let res = str.match(/(?:ab)+([1-9]+)/);

Nəticədə birinci qrupda bizim rəqəlimiz olacaq:

console.log(res[1]); // '123' çap edəcək
uzlsvptuzcfr