O símbolo de acento circunflexo dentro de conjuntos em expressões regulares do Python

Como você sabe, o acento circunflexo dentro de [ ] faz uma negação quando escrito no início dos colchetes. Portanto, ele é um caractere especial dentro desses colchetes. Para obter o acento circunflexo como um caractere comum, é preciso ou escapá-lo, ou removê-lo da primeira posição.

Exemplo

No exemplo a seguir, o padrão de busca é: o primeiro caractere é tudo exceto 'd', depois duas letras 'x':

pythontxt = 'axx bxx ^xx dxx'
res = re.sub('[^d]xx', '!', txt)

print(res)

Como resultado, será armazenado na variável o seguinte:

python'! ! ! dxx'

Exemplo

Agora o padrão de busca é: o primeiro caractere é 'd' ou '^', depois duas letras 'x':

pythontxt = 'axx bxx ^xx dxx'
res = re.sub('[d^]xx', '!', txt)

print(res)

Como resultado, será armazenado na variável o seguinte:

python'axx bxx ! !'

Exemplo

Você pode não remover o acento circunflexo da primeira posição, e simplesmente escapá-lo usando a barra invertida, e ele passará a representar a si mesmo:

pythontxt = 'axx bxx ^xx dxx'
res = re.sub('[\^d]xx', '!', txt)

print(res)

Como resultado, será armazenado na variável o seguinte:

python'axx bxx ! !'

Problemas Práticos

Задание 1

Dada a string:

pythontxt = '^xx axx ^zz bkk @ss'

Escreva uma expressão regular que encontrará as strings seguindo o padrão: acento circunflexo ou arroba, e então duas letras latinas.

Задание 2

Dada a string:

pythontxt = '^xx axx ^zz bkk @ss'

Escreva uma expressão regular que encontrará as strings seguindo o padrão: NÃO é acento circunflexo e nem arroba, e depois duas letras latinas.

Задание 3

Dada a string:

pythontxt = '^xx axx ^zz bkk'

Escreva uma expressão regular que encontrará as strings seguindo o padrão: não é acento circunflexo e nem espaço, e depois duas letras latinas.