Simbol strešice znotraj nizov v regularnih izrazih Python
Kot veste, strešica znotraj [ ]
pomeni negacijo, če je zapisana na
začetku oklepajev. To pomeni, da je
poseben simbol znotraj teh oklepajev. Da
bi dobili strešico kot simbol, jo morate
ali escapirati, ali premakniti s prvega
mesta.
Primer
V naslednjem primeru je vzorec iskanja tak:
prvi znak je vse razen 'd',
nato dve črki 'x':
txt = 'axx bxx ^xx dxx'
res = re.sub('[^d]xx', '!', txt)
print(res)
Kot rezultat se bo v spremenljivko zapisalo naslednje:
'! ! ! dxx'
Primer
Zdaj pa je vzorec iskanja tak: prvi
znak je 'd' ali '^',
nato dve črki 'x':
txt = 'axx bxx ^xx dxx'
res = re.sub('[d^]xx', '!', txt)
print(res)
Kot rezultat se bo v spremenljivko zapisalo naslednje:
'axx bxx ! !'
Primer
Strešice vam ni treba premakniti s prvega mesta, ampak jo lahko preprosto escapirate z uporabo poševnice nazaj, in ta bo predstavljala samo sebe:
txt = 'axx bxx ^xx dxx'
res = re.sub('[\^d]xx', '!', txt)
print(res)
Kot rezultat se bo v spremenljivko zapisalo naslednje:
'axx bxx ! !'
Praktične naloge
Podan je niz:
txt = '^xx axx ^zz bkk @ss'
Napišite regularni izraz, ki bo našel nize po vzorcu: strešica ali afna, nato pa dve latinični črki.
Podan je niz:
txt = '^xx axx ^zz bkk @ss'
Napišite regularni izraz, ki bo našel nize po vzorcu: NE strešica in ne afna, nato pa dve latinični črki.
Podan je niz:
txt = '^xx axx ^zz bkk'
Napišite regularni izraz, ki bo našel nize po vzorcu: ne strešica in ne presledek, nato pa dve latinični črki.