Kablys simbolis reguliariųjų išraiškų Python rinkiniuose
Kaip žinote, kablys [ ] viduje
sukuria neigimą, kai yra parašytas
skliaustų pradžioje. Tai reiškia, kad jis yra
specialus simbolis šių skliaustų viduje. Kad
gautumėte kablį kaip simbolį, reikia arba
jį ekranuoti, arba pašalinti iš pirmosios
pozicijos.
Pavyzdys
Šiame pavyzdyje paieškos šablonas yra toks:
pirmasis simbolis yra viskas, išskyrus 'd',
po to dvi raidės 'x':
txt = 'axx bxx ^xx dxx'
res = re.sub('[^d]xx', '!', txt)
print(res)
Dėl to į kintamąjį bus įrašyta tai:
'! ! ! dxx'
Pavyzdys
O dabar paieškos šablonas yra toks: pirmasis
simbolis yra 'd' arba '^',
po to dvi raidės 'x':
txt = 'axx bxx ^xx dxx'
res = re.sub('[d^]xx', '!', txt)
print(res)
Dėl to į kintamąjį bus įrašyta tai:
'axx bxx ! !'
Pavyzdys
Galima nešalinti kablio iš pirmosios pozicijos, o tiesiog jį ekranuoti naudojant atvirkštinį pasvirąjį brūkšnį, ir jis reikš patį save:
txt = 'axx bxx ^xx dxx'
res = re.sub('[\^d]xx', '!', txt)
print(res)
Dėl to į kintamąjį bus įrašyta tai:
'axx bxx ! !'
Praktinės užduotys
Duota eilutė:
txt = '^xx axx ^zz bkk @ss'
Parašykite reguliariąją išraišką, kuri ras eilutes pagal šabloną: kablys arba eta, o po to dvi lotyniškos raidės.
Duota eilutė:
txt = '^xx axx ^zz bkk @ss'
Parašykite reguliariąją išraišką, kuri ras eilutes pagal šabloną: NE kablys ir ne eta, o po to dvi lotyniškos raidės.
Duota eilutė:
txt = '^xx axx ^zz bkk'
Parašykite reguliariąją išraišką, kuri ras eilutes pagal šabloną: ne kablys ir ne tarpas, o po to dvi lotyniškos raidės.