Navngitte grupper i Pythons search-metode
For å gjøre arbeidet med grupper mer
bekvemt, kan du gi dem navn. For å gjøre dette
i den første parameteren til metoden search
skrives strengen '?P' før betegnelsen av det regulære uttrykket,
etter den, i vinkelparenteser, angis
gruppens navn.
Slike grupper kan hentes ved hjelp av
metoden groupdict. Den vil vise dem
i form av en ordbok, der nøkkelen er gruppens navn,
og verdien er delstrengen som ligger i den.
La oss se på arbeidet med navngitte grupper med et eksempel. Anta at vi har følgende streng:
txt = '123 456'
La oss lage to grupper for den,
som skal hete 'num1' og 'num2'
henholdsvis:
res = re.search('(?P<num1>\d+)\s(?P<num2>\d+)', txt)
La oss nå vise gruppene våre med metoden groupdict:
print(res.groupdict()) # vil skrive ut {'num1': '123', 'num2': '456'}
Gitt en streng med tid:
txt = '12:59:59'
Plasser timer, minutter og sekunder i separate navngitte grupper.
Gitt en streng:
txt = 'aaa bbb 123 456'
Plasser delstrengene 'aaa' og 'bbb'
i separate navngitte grupper.
Gitt en streng:
txt = 'alex23'
Plasser brukerens navn og alder i separate navngitte grupper.