Caractères spéciaux entre crochets en Python

Les caractères spéciaux à l'intérieur de [ ] deviennent des caractères ordinaires. Cela signifie qu'il n'est pas nécéssaire de les échapper avec un antislash.

Exemple

Dans cet exemple, le modèle de recherche est le suivant : entre les x, n'importe quelle lettre 'a', 'b', 'c', ou un point :

pythontxt = 'xax xbx xcx xdx x.x x@x'
res = re.sub('x[abc.]x', '!', txt)

print(res)

Résultat de l'exécution du code :

python'! ! ! xdx ! x@x'

Exemple

Dans cet exemple, le modèle de recherche est le suivant : entre les x, n'importe quelle lettre minuscule latin ou un point :

pythontxt = 'xax xbx xcx x@x'
res = re.sub('x[a-z.]x', '!', txt)

print(res)

Résultat de l'exécution du code :

python'! ! ! x@x'

Problèmes pratiques

Задание 1

Soit la chaîne :

pythontxt = 'aba aea aca aza axa a.a a+a a*a'

Écrivez une expression régulière qui trouvera les chaînes 'a.a', 'a+a', 'a*a', sans affecter les autres.

Задание 2

Soit la chaîne :

pythontxt = 'xaz x.z x3z x@z x$z xrz'

Écrivez une expression régulière qui trouvera les chaînes selon le modèle : lettre 'x', puis NON point, NON arobase, et NON dollar, puis lettre 'z'.