Caret-tegnet inne i sett i regulære uttrykk i Python

Som du vet, gjør caret-tegnet inne i [ ] om til negasjon, når det skrives i begynnelsen av parentesene. Dette betyr at det er et spesialtegn inne i disse parentesene. For å få caret-tegnet som et vanlig tegn, må du enten escape det eller flytte det fra første plass.

Eksempel

I følgende eksempel er søkemønsteret slik: første tegn er alt bortsett fra 'd', deretter to bokstaver 'x':

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

print(res)

Resultatet som lagres i variabelen blir følgende:

python'! ! ! dxx'

Eksempel

Nå er søkemønsteret slik: første tegn er 'd' eller '^', deretter to bokstaver 'x':

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

print(res)

Resultatet som lagres i variabelen blir følgende:

python'axx bxx ! !'

Eksempel

Du trenger ikke å flytte caret-tegnet fra første plass, du kan bare escape det ved hjelp av backslash, så vil det representere seg selv:

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

print(res)

Resultatet som lagres i variabelen blir følgende:

python'axx bxx ! !'

Praktiske oppgaver

Задание 1

Gitt en streng:

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

Skriv et regulært uttrykk som finner strenger med mønsteret: caret-tegn eller krøllalfa, og deretter to latinske bokstaver.

Задание 2

Gitt en streng:

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

Skriv et regulært uttrykk som finner strenger med mønsteret: IKKE caret-tegn og ikke krøllalfa, og deretter to latinske bokstaver.

Задание 3

Gitt en streng:

pythontxt = '^xx axx ^zz bkk'

Skriv et regulært uttrykk som finner strenger med mønsteret: ikke caret-tegn og ikke mellomrom, og deretter to latinske bokstaver.