JavaScript-da regulýar ifadeleriň giriş
Regulýar ifadeler - çylşyrymly gözleg we çalyşma (ýa-da diňe gözleg) üçin şeýle buýruklardyr. Olar örän gyzykly zatlar etmäge mümkinçilik berýär, ýöne, gynansagam, öwrenilmede epeý agyr.
Regulýar ifadeler bilen işlemek üçin birnäçe JavaScript metodu bar. Biz olar bilen replace mysalynda tanyşarys - bu metoda siz eýýäm tanysyňyz: ol birinji parametr hökmünde näme çalşmalydygyny, ikinjisi hökmünde bolsa näme bilen çalşmalydygyny kabul edýär. Metod özü bolsa çalşmanyň amala aşyrylýan setirine degişlidir:
'bab'.replace('a', '!'); // 'b!b' gaýtarar
Bu metoduň birinji parametri hökmünde diňe setiri däl, eýsem regulýar ifadäni geçirip bolýar. Regulýar ifade, / süýşleriniň içinde ýerleşdirilen buýruklar toplumyndan ybarat. Bu süýşler regulýar ifadeleriň çäkleri diýilýär.
Regulýar ifadeler özleri iki görnüşli nyşandan ybarat: özlerini aňladýanlardan we ýörite nyşanlar diýilýän buýruk nyşanlaryndan.
Harplar we sanlar özlerini aňladýar. Indiki mysalda biz regulýar ifade kömegi bilen 'a' harpy ! bilen çalşarys:
'bab'.replace(/a/, '!'); // 'b!b' gaýtarar
Şu ýerde nokat bolsa ýörite nyşan bolup, isli bir nyşany aňladýar. Indiki mysalda biz şu şablona görä setiri taparys: 'x' harpy, soňra isli bir nyşan, ýene 'x' harp:
'xax eee'.replace(/x.x/, '!'); // '! eee' gaýtarar
Çäklerden soň modifikatorlar - regulýar ifadäniň umumy aýratynlyklaryny üýtgedýän buýruklar ýazylyp bilner. Mysal üçin, g modifikatory global gözleg we çalşma tertibini işjeňleşdirýär - onsyz regulýarka diňe birinji gabylaşygy gözleýär, onuň bilen bolsa - ähli gabylaşyklary.
Indiki mysalda g modifikatory görkezilmedik we regulýarka diňe birinji gabylaşygy tapar:
'aab'.replace(/a/, '!'); // '!ab' gaýtarar
Indi bolsa regulýarka ähli gabylaşyklary tapar:
'aab'.replace(/a/g, '!'); // '!!b' gaýtarar
Setir berlen:
let str = 'ahb acb aeb aeeb adcb axeb';
Şu şablona görä 'ahb', 'acb', 'aeb' setirlerini tapjak regulýarka ýazyň: 'a' harp, isli bir nyşan, 'b' harp.
Setir berlen:
let str = 'aba aca aea abba adca abea';
Şu şablona görä 'abba', 'adca', 'abea' setirlerini tapjak regulýarka ýazyň: 'a' harp, 2 isli nyşan, 'a' harp.
Setir berlen:
let str = 'aba aca aea abba adca abea';
'adca' setirini almasdan, 'abba' we 'abea' setirlerini tapjak regulýarka ýazyň.