Rakstzīmju kopu invertēšana regulārajās izteiksmēs

Izmantojot zobentiņu '^' kvadrātiekavu sākumā, var invertēt vēlamo. Ja, piemēram, komanda [ab] meklē burtu 'a' vai 'b', tad komanda [^ab] meklēs visus rakstzīmes, izņemot 'a' un 'b'.

Piemērs

Šajā piemērā meklēšanas šablons izskatās šādi: burts 'x', tad NE burts 'a', ne 'b' un ne 'c', tad burts 'z':

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

print(res)

Koda izpildes rezultāts:

python'xax xbx xcx !'

Piemērs

Šajā piemērā meklēšanas šablons izskatās šādi: burts 'x', tad NE mazais latīņu burts, tad burts 'z':

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

print(res)

Koda izpildes rezultāts:

python'xaz xbz ! !'

Praktiskie uzdevumi

Задание 1

Uzrakstiet regulāro izteiksmi, kas atradīs virknes pēc šablona: cipars 1, tad rakstzīme ne 'e' un ne 'x', cipars 2.

Задание 2

Uzrakstiet regulāro izteiksmi, kas atradīs virknes pēc šablona: burts 'x', tad NE cipars no 2 līdz 7, burts 'z'.

Задание 3

Uzrakstiet regulāro izteiksmi, kas atradīs virknes pēc šablona: burts 'x', tad NE lielais latīņu burts no 1 un vairāk reizes, burts 'z'.

Задание 4

Uzrakstiet regulāro izteiksmi, kas atradīs virknes pēc šablona: burts 'x', tad NE lielais vai mazais latīņu burts un ne cipars no 1 līdz 5 no 1 un vairāk reizes, burts 'z'.