Sümbolikomplektide inverteerimine regulaaravaldistes

Katusega '^' ruutsulgude alguses saab soovitud vastupidiseks pöörata. Kui näiteks käsk [ab] otsib tähte 'a' või 'b', siis käsk [^ab] otsib kõiki sümboleid, välja arvatud 'a' ja 'b'.

Näide

Selles näites on otsimismustril järgmine välimus: täht 'x', siis MITTE täht 'a', mitte 'b' ega 'c', seejärel täht 'z':

pythontxt = 'xaz xbz xcz xez'
res = re.sub('x[^abc]z', '!', txt)

print(res)

Koodi täitmise tulemus:

python'xax xbx xcx !'

Näide

Selles näites on otsimismustril järgmine välimus: täht 'x', siis MITTE väike ladina täht, seejärel täht 'z':

pythontxt = 'xaz xbz x1z xCz'
res = re.sub('x[^a-z]z', '!', txt)

print(res)

Koodi täitmise tulemus:

python'xaz xbz ! !'

Praktilised ülesanded

Задание 1

Kirjutage regulaaravaldis, mis leiab stringid vastavalt mustrile: number 1, seejärel sümbol mitte 'e' ega 'x', number 2.

Задание 2

Kirjutage regulaaravaldis, mis leiab stringid vastavalt mustrile: täht 'x', seejärel MITTE number vahemikust 2 kuni 7, täht 'z'.

Задание 3

Kirjutage regulaaravaldis, mis leiab stringid vastavalt mustrile: täht 'x', seejärel MITTE suur ladina täht 1 või rohkem korda, täht 'z'.

Задание 4

Kirjutage regulaaravaldis, mis leiab stringid vastavalt mustrile: täht 'x', seejärel MITTE suur ega väike ladina täht ega number vahemikust 1 kuni 5 1 või rohkem korda, täht 'z'.