Le symbole de l'accent circonflexe dans les ensembles d'expressions régulières Python
Comme vous le savez, l'accent circonflexe à l'intérieur de [ ]
crée une négation, lorsqu'il est écrit au
début des crochets. Cela signifie que c'est un
caractère spécial à l'intérieur de ces crochets. Pour
obtenir l'accent circonflexe en tant que caractère, il faut soit
l'échapper, soit le retirer de la première position.
Exemple
Dans l'exemple suivant, le modèle de recherche est le suivant :
le premier caractère est tout sauf 'd',
puis deux lettres 'x' :
txt = 'axx bxx ^xx dxx'
res = re.sub('[^d]xx', '!', txt)
print(res)
En conséquence, la variable contiendra ce qui suit :
'! ! ! dxx'
Exemple
Et maintenant, le modèle de recherche est le suivant : le premier
caractère est 'd' ou '^',
puis deux lettres 'x' :
txt = 'axx bxx ^xx dxx'
res = re.sub('[d^]xx', '!', txt)
print(res)
En conséquence, la variable contiendra ce qui suit :
'axx bxx ! !'
Exemple
Il n'est pas nécessaire de retirer l'accent circonflexe de la première position, il suffit de l'échapper avec un antislash, et il représentera alors lui-même :
txt = 'axx bxx ^xx dxx'
res = re.sub('[\^d]xx', '!', txt)
print(res)
En conséquence, la variable contiendra ce qui suit :
'axx bxx ! !'
Tâches pratiques
Soit une chaîne :
txt = '^xx axx ^zz bkk @ss'
Écrivez une expression régulière qui trouvera les chaînes selon le modèle : accent circonflexe ou arobase, puis deux lettres latines.
Soit une chaîne :
txt = '^xx axx ^zz bkk @ss'
Écrivez une expression régulière qui trouvera les chaînes selon le modèle : NI accent circonflexe ni arobase, mais puis deux lettres latines.
Soit une chaîne :
txt = '^xx axx ^zz bkk'
Écrivez une expression régulière qui trouvera les chaînes selon le modèle : ni accent circonflexe ni espace, mais puis deux lettres latines.