⊗pyPmREMSP 58 of 129 menu

Taskud Pythoni asendusstringis

Töötades meetodiga sub, kui miski tuleb panna taskusse regulaaravaldises, siis asendusstringis saab selle tasku sisu sisestada kirjutades kaldkriipsu \ ja tasku numbri. Näiteks \1 - esimene task, \2 - teine task ja nii edasi.

Milleks seda vaja on ja kuidas seda kasutada vaatame näidete varal.

Näide

Leiame kõik numbrid ja nende asemele paneme need samad numbrid, kuid ümarsulgudes. Selleks asendame kõik leitud numbrid nendega endaga, kuid sulgudes:

txt = '1 23 456 xax' res = re.sub('(\d+)', '(\1)', txt) print(res)

Tulemusena kirjutatakse muutujasse järgmine:

'(1) (23) (456) xax'

Näide

Leiame kõik stringid, mis esindavad nummerdust ümbritsetud x-idega ja asendame need numbrid endaga, kuid ümbritsetud '!' märkidega:

txt = 'x1x x23x x456x xax' res = re.sub('x(\d+)x', '!\1!', txt) print(res)

Tulemusena kirjutatakse muutujasse järgmine:

'!1! !23! !456! xax'

Näide

Lahendame järgmise ülesande: on antud string 'aaa@bbb ccc@ddd' - tähed, siis @ märk, siis tähed. On vaja vahetada kohad tähtedel alamstringis 'aaa@bbb' enne '@' märki ja pärast:

txt = 'aaa@bbb ccc@ddd' res = re.sub('([a-z]+)@([a-z]+)', '\2@\1', txt) print(res)

Tulemusena kirjutatakse muutujasse järgmine:

'bbb@aaa ccc@ddd'

Praktilised ülesanded

Antud string:

txt = '12 34 56 78'

Vahetage kohad numbritel kõigis kahekohalistes numbrites.

Antud string kuupäevaga:

txt = '31.12.2025'

Teisendage see kuupäev kujule '2025.12.31'.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu