Início e fim de linha em expressões regulares do Python

Existem caracteres especiais que representam o início '^' ou o fim da linha '$'. Vamos ver seu funcionamento com exemplos.

Exemplo

Neste exemplo, o padrão de busca é: substituir 'aaa' por '!' somente se estiver no início da linha:

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

print(res)

Resultado da execução do código:

python'! aaa aaa'

Exemplo

Neste exemplo, o padrão de busca é: substituir 'aaa' por '!' somente se estiver no final da linha:

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

print(res)

Resultado da execução do código:

python'aaa aaa !'

Exemplo

Quando uma expressão regular começa com '^' e termina com '$', isso verifica se a string inteira corresponde à expressão regular.

No próximo exemplo, o padrão de busca é: a letra 'a' repetida uma ou mais vezes, substituir a string toda por '!' somente se ela consistir apenas da letra 'a':

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

print(res)

Resultado da execução do código:

python'!'

Problemas práticos

Задание 1

Dada a string:

pythontxt = 'abc def xyz'

Escreva uma expressão regular que encontre a primeira substring de letras.

Задание 2

Dada a string:

pythontxt = 'abc def xyz'

Escreva uma expressão regular que encontre a última substring de letras.