Symbol striešky vnútri množín v regulárnych výrazoch Python

Ako viete, strieška vnútri [ ] robí negáciu, keď je napísaná na začiatku zátvoriek. To znamená, že je špeciálnym symbolom vnútri týchto zátvoriek. Aby sme dostali striešku ako symbol, musíme ju buď escapovať, alebo odstrániť z prvého miesta.

Príklad

V nasledujúcom príklade je vzor vyhľadávania taký: prvý symbol je všetko okrem 'd', potom dve písmená 'x':

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

print(res)

Výsledkom do premennej bude nasledujúce:

python'! ! ! dxx'

Príklad

A teraz je vzor vyhľadávania taký: prvý symbol je 'd' alebo '^', potom dve písmená 'x':

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

print(res)

Výsledkom do premennej bude nasledujúce:

python'axx bxx ! !'

Príklad

Nemusíme odstraňovať striešku z prvého miesta, stačí ju escapovať pomocou spätného lomka a bude znamenať seba samú:

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

print(res)

Výsledkom do premennej bude nasledujúce:

python'axx bxx ! !'

Praktické úlohy

Задание 1

Daný reťazec:

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

Napíšte regulárny výraz, ktorý nájde reťazce podľa vzoru: strieška alebo zavináč, a potom dve latinské písmená.

Задание 2

Daný reťazec:

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

Napíšte regulárny výraz, ktorý nájde reťazce podľa vzoru: NIE strieška a nie zavináč, a potom dve latinské písmená.

Задание 3

Daný reťazec:

pythontxt = '^xx axx ^zz bkk'

Napíšte regulárny výraz, ktorý nájde reťazce podľa vzoru: nie strieška a nie medzera, a potom dve latinské písmená.