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:
txt = 'aaa aaa aaa'
res = re.sub('^aaa', '!', txt)
print(res)
Resultado da execução do código:
'! aaa aaa'
Exemplo
Neste exemplo, o padrão de busca é:
substituir 'aaa' por '!'
somente se estiver no final da linha:
txt = 'aaa aaa aaa'
res = re.sub('aaa$', '!', txt)
print(res)
Resultado da execução do código:
'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':
txt = 'aaa'
res = re.sub('^a+$', '!', txt)
print(res)
Resultado da execução do código:
'!'
Problemas práticos
Dada a string:
txt = 'abc def xyz'
Escreva uma expressão regular que encontre a primeira substring de letras.
Dada a string:
txt = 'abc def xyz'
Escreva uma expressão regular que encontre a última substring de letras.