Katusemärgi sümbol Pythoni regulaaravaldiste hulgas
Nagu teate, teeb katusemärk [ ] sees
eituse, kui see on kirjutatud
sulgude algusesse. See tähendab, et see on
spetsiaalsümbol nende sulgude sees. Et
saada katusemärki kui sümbolit, tuleb see
kas ekraanida või eemaldada esimeselt
kohalt.
Näide
Järgmises näides on otsimismustriks:
esimene sümbol on kõik peale 'd',
siis kaks tähte 'x':
txt = 'axx bxx ^xx dxx'
res = re.sub('[^d]xx', '!', txt)
print(res)
Tulemusena kirjutatakse muutujasse järgmine:
'! ! ! dxx'
Näide
Ja nüüd on otsimismustriks: esimene
sümbol on 'd' või '^',
siis kaks tähte 'x':
txt = 'axx bxx ^xx dxx'
res = re.sub('[d^]xx', '!', txt)
print(res)
Tulemusena kirjutatakse muutujasse järgmine:
'axx bxx ! !'
Näide
Katusemärki ei pea esimeselt kohalt eemaldama, vaid selle võib lihtsalt ekraanida tagurpidi kaldkriipsuga ja see hakkab tähistama iseennast:
txt = 'axx bxx ^xx dxx'
res = re.sub('[\^d]xx', '!', txt)
print(res)
Tulemusena kirjutatakse muutujasse järgmine:
'axx bxx ! !'
Praktilised ülesanded
Antud on sõne:
txt = '^xx axx ^zz bkk @ss'
Kirjutage regulaaravaldis, mis leiab sõned vastavalt mustrile: katusemärk või @-märk, millele järgnevad kaks ladina tähte.
Antud on sõne:
txt = '^xx axx ^zz bkk @ss'
Kirjutage regulaaravaldis, mis leiab sõned vastavalt mustrile: MITTE katusemärk ega @-märk, vaid millele järgnevad kaks ladina tähte.
Antud on sõne:
txt = '^xx axx ^zz bkk'
Kirjutage regulaaravaldis, mis leiab sõned vastavalt mustrile: mitte katusemärk ega tühik, vaid millele järgnevad kaks ladina tähte.