Nyşanlaryň gaýtalanma operatorlary
Nyşanyň bellenen mukdarda gaýtalanýandygyny görkezmek isleýän ýagdaýlar bar bolýar.
Gaýtalanmagynyň takyk sany belli bolsa, onda ony birnäçe gezek ýazyp bolýar
- /aaaa/. Ýöne şeýle diýmek islesek: bir ýa-da birnäçe gezek gaýtala?
Bun üçin gaýtalanma operatorlary (kwantifikatorlar) bar: goşmaça + (bir ýa-da birnäçe gezek),
ýyldyz * (nol ýa-da birnäçe gezek) we
sorag ? (nol ýa-da bir gezek). Bu
operatorlar öňlerinde durýan nyşana täsir edýär.
Geliň bu operatorlaryň işini mysallar üçinde göreliň.
Mysal
Şablon boýunça ähli aňlatmalary tapalyň: harf
'x', 'a' harpy bir ýa-da birnäçe gezek,
'x' harpy:
let str = 'xx xax xaax xaaax xbx';
let res = str.replace(/xa+x/g, '!');
Netijede üýtgeýjide şu ýazylar:
'xx ! ! ! xbx'
Mysal
Şablon boýunça ähli aňlatmalary tapalyň: harf
'x', 'a' harpy nol ýa-da birnäçe gezek,
'x' harpy:
let str = 'xx xax xaax xaaax xbx'
let res = str.replace(/xa*x/g, '!');
Netijede üýtgeýjide şu ýazylar:
'! ! ! ! xbx'
Mysal
Şablon boýunça ähli aňlatmalary tapalyň: harf
'x', 'a' harpy nol ýa-da bir gezek,
'x' harpy:
let str = 'xx xax xaax xbx';
let res = str.replace(/xa?x/g, '!');
Netijede üýtgeýjide şu ýazylar:
'! ! xaax xbx'
Amaly meseleler
Setir berlen:
let str = 'aa aba abba abbba abca abea';
Şablona laýyk: harf 'a', 'b' harpy
islendik mukdarda (islendik gezek), 'a' harpy
'aba', 'abba', 'abbba' setirlerini
tapýan regulýarka ýazyň.
Setir berlen:
let str = 'aa aba abba abbba abca abea';
Şablona laýyk: harf 'a', 'b' harpy
islendik mukdarda (hatda bir gezekem däl), 'a' harpy
'aa', 'aba', 'abba',
'abbba' setirlerini tapýan regulýarka ýazyň.
Setir berlen:
let str = 'aa aba abba abbba abca abea';
Şablona laýyk: harf 'a', 'b' harpy
bir gezek ýa-da hiç, 'a' harpy
'aa', 'aba' setirlerini tapýan regulýarka ýazyň.
Setir berlen:
let str = 'aa aba abba abbba abca abea';
'abca' we 'abea' setirlerini alyşdyrmazdan,
'aa', 'aba', 'abba',
'abbba' setirlerini tapýan regulýarka ýazyň.