Lommer i erstatningsteksten i Python

Når du arbeider med metoden sub, hvis noe må legges i en lomme i det regulære uttrykket, kan du sette inn innholdet fra denne lommen i erstatningsteksten ved å skrive dobbelt skråstrek \ og lommenummeret. For eksempel, \1 - den første lommen, \2 - den andre lommen og så videre.

La oss se på eksempler for å forstå hvorfor dette er nyttig og hvordan det brukes.

Eksempel

La oss finne alle tall og erstatte dem med de samme tallene, men inni parenteser. For å gjøre dette erstatter vi alle funnede tall med seg selv, men i parentes:

pythontxt = '1 23 456 xax'

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

Resultatet som lagres i variabelen vil være følgende:

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

Eksempel

La oss finne alle strenger som representerer tall omgitt av 'x' og erstatte disse tallene med seg selv, men med '!' tegn rundt:

pythontxt = 'x1x x23x x456x xax'

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

Resultatet som lagres i variabelen vil være følgende:

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

Eksempel

La oss løse følgende oppgave: gitt en streng 'aaa@bbb ccc@ddd' - bokstaver, deretter krøllalfa, deretter bokstaver. Vi må bytte plass på bokstavene i delstrengen 'aaa@bbb' før '@' og etter:

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

print(res)

Resultatet som lagres i variabelen vil være følgende:

python'bbb@aaa ccc@ddd'

Praktiske oppgaver

Задание 1

Gitt en streng:

pythontxt = '12 34 56 78'

Bytt om sifrene i alle tosifrede tall.

Задание 2

Gitt en streng med en dato:

pythontxt = '31.12.2025'

Konverter denne datoen til '2025.12.31'.