Début et fin de ligne dans les regex Python

Il existe des caractères spéciaux qui indiquent le début '^' ou la fin de la ligne '. Regardons leur fonctionnement à travers des exemples.

Exemple

Dans cet exemple, le modèle de recherche est le suivant : remplacer 'aaa' par '!' uniquement s'il se trouve au début de la ligne :

pythontxt = 'aaa aaa aaa'
res = re.sub('^aaa', '!', txt)

print(res)

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

python'! aaa aaa'

Exemple

Dans cet exemple, le modèle de recherche est le suivant : remplacer 'aaa' par '!' uniquement s'il se trouve à la fin de la ligne :

pythontxt = 'aaa aaa aaa'
res = re.sub('aaa
', '!', txt)

print(res)

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

python'aaa aaa !'

Exemple

Lorsque le '^' est au début de l'expression régulière, et le ' à la fin, cela permet de vérifier que la chaîne entière correspond à l'expression régulière.

Dans l'exemple suivant, le modèle de recherche est le suivant : la lettre 'a' répétée une ou plusieurs fois, remplacer toute la chaîne par '!' uniquement si elle est constituée uniquement de lettres 'a' :

pythontxt = 'aaa'
res = re.sub('^a+$', '!', txt)

print(res)

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

python'!'

Problèmes pratiques

Задание 1

Soit la chaîne :

pythontxt = 'abc def xyz'

Écrivez une expression régulière qui trouvera la première sous-chaîne de lettres.

Задание 2

Soit la chaîne :

pythontxt = 'abc def xyz'

Écrivez une expression régulière qui trouvera la dernière sous-chaîne de lettres.