Karakterkészletek invertálása reguláris kifejezésekben
A kalap '^' karakterrel a
szögletes zárójelek elején invertálhatjuk
a kívántakat. Ha például a [ab]
parancs az 'a' vagy 'b'
betűt keresi, akkor a [^ab]
parancs az 'a' és 'b'
betűn kívüli összes karaktert meg fogja találni.
Példa
Ebben a példában a keresési minta a
következő: 'x' betű, majd NEM 'a',
nem 'b' és nem 'c' betű,
majd 'z' betű:
txt = 'xaz xbz xcz xez'
res = re.sub('x[^abc]z', '!', txt)
print(res)
A kód végrehajtásának eredménye:
'xax xbx xcx !'
Példa
Ebben a példában a keresési minta a
következő: 'x' betű, majd NEM kis
latin betű, majd 'z' betű:
txt = 'xaz xbz x1z xCz'
res = re.sub('x[^a-z]z', '!', txt)
print(res)
A kód végrehajtásának eredménye:
'xaz xbz ! !'
Gyakorlati feladatok
Írjon reguláris kifejezést, amely megtalálja a
következő minta szerinti sorokat:
1 számjegy, majd olyan karakter,
ami nem 'e' és nem 'x', majd
2 számjegy.
Írjon reguláris kifejezést, amely megtalálja a
következő minta szerinti sorokat:
'x' betű, majd NEM 2 és 7
közötti számjegy, majd 'z' betű.
Írjon reguláris kifejezést, amely megtalálja a
következő minta szerinti sorokat:
'x' betű, majd NEM nagy latin betű 1
vagy több alkalommal, majd 'z' betű.
Írjon reguláris kifejezést, amely megtalálja a
következő minta szerinti sorokat:
'x' betű, majd NEM nagy vagy kis latin betű
és nem 1 és 5 közötti számjegy
1 vagy több alkalommal, majd 'z' betű.