⊗jsSpRENPB 132 of 294 menu

Չպահող փակագծերը JavaScript-ի կանոնավոր արտահայտություններում

Փակագծերը ( ) կատարում են երկու ֆունկցիա - նիշերի խմբավորում և պահեստի ֆունկցիա: Իսկ ինչ անել, եթե մեզ պետք է խմբավորել, բայց պահեստում չպահել: Նման խնդիրը լուծելու համար ստեղծվել են հատուկ չպահող փակագծեր (?: ) - դրանք խմբավորում են, բայց չեն դնում պահեստում:

Օրինակ

Հաջորդ օրինակում առաջին փակագծերը մեզ անհրաժեշտ են խմբավորման համար, իսկ երկրորդները՝ պահեստի համար: Սակայն, և՛ մեկը, և՛ մյուսը պահում են տվյալները պահեստում.

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

Արդյունքում մեր պահեստներում կլինի հետևյալը.

console.log(res[0]); // կարտածի 'abab123' console.log(res[1]); // կարտածի 'ab' console.log(res[2]); // կարտածի '123'

Օրինակ

Եկեք անենք այնպես, որ փակագծերի առաջին զույգը միայն խմբավորի, բայց չպահի պահեստում.

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

Արդյունքում առաջին պահեստում կլինի մեր թիվը.

console.log(res[1]); // կարտածի '123'
hihukacsuzl