Tegn-gentagelsesoperatorer i regulære udtryk

Der opstår situationer, hvor vi ønsker at angive, at et tegn gentages et bestemt antal gange. Hvis vi kender det præcise antal gentagelser, kan vi blot skrive det flere gange - /aaaa/. Men hvad gør vi, hvis vi vil sige sådan: gentag en eller flere gange?

Til dette findes der gentagelsesoperatorer (kvantifikatorer): plus + (en eller flere gange), stjerne * (nul eller flere gange) og spørgsmålstegn ? (nul eller én gang). Disse operatorer virker på det tegn, som står foran dem.

Lad os se på arbejdet med disse operatorer med eksempler.

Eksempel

Lad os finde alle delstrenge efter mønsteret bogstav 'x', bogstav 'a' en eller flere gange, bogstav 'x':

javascriptlet str = 'xx xax xaax xaaax xbx';
let res = str.replace(/xa+x/g, '!');

Resultatet i variablen vil blive følgende:

javascript'xx ! ! ! xbx'

Eksempel

Lad os finde alle delstrenge efter mønsteret bogstav 'x', bogstav 'a' nul eller flere gange, bogstav 'x':

javascriptlet str = 'xx xax xaax xaaax xbx'
let res = str.replace(/xa*x/g, '!');

Resultatet i variablen vil blive følgende:

javascript'! ! ! ! xbx'

Eksempel

Lad os finde alle delstrenge efter mønsteret bogstav 'x', bogstav 'a' nul eller én gang, bogstav 'x':

javascriptlet str = 'xx xax xaax xbx';
let res = str.replace(/xa?x/g, '!');

Resultatet i variablen vil blive følgende:

javascript'! ! xaax xbx'

Praktiske opgaver

Задание 1

Givet en streng:

javascriptlet str = 'aa aba abba abbba abca abea';

Skriv et regulært udtryk, der finder strengene 'aba', 'abba', 'abbba' efter mønsteret: bogstav 'a', bogstav 'b' et hvilket som helst antal gange, bogstav 'a'.

Задание 2

Givet en streng:

javascriptlet str = 'aa aba abba abbba abca abea';

Skriv et regulært udtryk, der finder strengene 'aa', 'aba', 'abba', 'abbba' efter mønsteret: bogstav 'a', bogstav 'b' et hvilket som helst antal gange (inklusive null gange), bogstav 'a'.

Задание 3

Givet en streng:

javascriptlet str = 'aa aba abba abbba abca abea';

Skriv et regulært udtryk, der finder strengene 'aa', 'aba' efter mønsteret: bogstav 'a', bogstav 'b' én gang eller null gange, bogstav 'a'.

Задание 4

Givet en streng:

javascriptlet str = 'aa aba abba abbba abca abea';

Skriv et regulært udtryk, der finder strengene 'aa', 'aba', 'abba', 'abbba', uden at fange 'abca' og 'abea'.