Grupirajući zagrade u regularnim izrazima JavaScript
U prethodnim primerima operatori ponavljanja su delovali samo na jedan znak koji je stajao ispred njih. Šta da uradimo ako želimo da delujemo njima na više znakova?
Za to postoje grupirajuće zagrade
'(' i . One rade na sledeći način:
ako se nešto nalazi u grupirajućim zagradama
i odmah posle ')'')' stoji operator ponavljanja
- on će delovati na sve što se nalazi unutar zagrada.
Pogledajmo na primerima.
Primer
U sledećem primeru šablon pretrage izgleda
ovako: slovo 'x', zatim niz 'ab'
jadan ili više puta, onda slovo 'x':
let str = 'xabx xababx xaabbx'
let res = str.replace(/x(ab)+x/g, '!');
Kao rezultat, u promenljivu će biti upisano sledeće:
'! ! xaabbx'
Praktični zadaci
Data je niska:
let str = 'ab abab abab abababab abea';
Napišite regularni izraz koji će pronaći niske
po šablonu: niska 'ab' se ponavlja
1 ili više puta.