Navngivne grupper i Pythons search-metode
For at gøre arbejdet med grupper mere
bekvemt, kan du give dem navne. For at gøre dette
skrives strengen '?P'
foran betegnelsen af det regulære udtryk i den første parameter af metoden search,
efterfulgt af gruppens navn angivet i spidse
parenteser.
Sådanne grupper kan hentes ved hjælp af
metoden groupdict. Den vil udskrive dem
i form af en ordbog, hvor nøglen er gruppens navn,
og værdien er delstrengen, der ligger i den.
Lad os se på arbejdet med navngivne grupper med et eksempel. Antag, at vi har følgende streng:
txt = '123 456'
Lad os lave to grupper for den, som
hedder 'num1' og 'num2'
henholdsvis:
res = re.search('(?P<num1>\d+)\s(?P<num2>\d+)', txt)
Lad os nu udskrive vores grupper med metoden groupdict:
print(res.groupdict()) # vil udskrive {'num1': '123', 'num2': '456'}
Givet en streng med et klokkeslæt:
txt = '12:59:59'
Læg timer, minutter og sekunder i separate navngivne grupper.
Givet en streng:
txt = 'aaa bbb 123 456'
Læg delstrengene 'aaa' og 'bbb'
i separate navngivne grupper.
Givet en streng:
txt = 'alex23'
Læg brugerens navn og alder i separate navngivne grupper.