Fickor i Pythons search-metod
Det är ofta praktiskt att när man hittar en matchning kan man dela upp delsträngen i så kallade fickor. De representerar ett sätt att bryta ner det hittade i separata delar. För att använda dem måste man omge en del av det reguljära uttrycket med runda parenteser.
Låt oss prova i praktiken. Antag att vi har följande sträng:
txt = '123 456'
Låt oss dela upp delsträngarna med nummer i fickor. För att göra detta skriver vi följande reguljära uttryck:
res = re.search('(\d+) (\d+)', txt)
Som ett resultat får vi ett match-objekt. I
dess element med index 1 kommer
den första fickan att ligga, i elementet med index
2 - den andra fickan, och i elementet med
index 0 - allt som hittades (det
så kallade nollfickan):
print(res[0]) # '123 456' - det hittade
print(res[1]) # '123' - 1:a fickan
print(res[2]) # '456' # 2:a fickan
Given en sträng som innehåller en domän:
txt = 'sss domain.ru zzz'
Hitta denna domän och sätt dess namn i den första fickan, och zonen - i den andra.
Given en sträng som innehåller ett datum:
txt = '31.12.2025'
Sätt dagen i den första fickan, månaden - i den andra, och året - i den tredje.