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':

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

print(res)

Dėl to į kintamąjį bus įrašyta tai:

python'! ! ! dxx'

Pavyzdys

O dabar paieškos šablonas yra toks: pirmasis simbolis yra 'd' arba '^', po to dvi raidės 'x':

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

print(res)

Dėl to į kintamąjį bus įrašyta tai:

python'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:

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

print(res)

Dėl to į kintamąjį bus įrašyta tai:

python'axx bxx ! !'

Praktinės užduotys

Задание 1

Duota eilutė:

pythontxt = '^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.

Задание 2

Duota eilutė:

pythontxt = '^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.

Задание 3

Duota eilutė:

pythontxt = '^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.