fredag 2 mars 2012

Dagens Regular Expression: Delarna i en svensk gatuadress

Fredag eftermiddag och dagens Regular Expression lyder:
^(?<BOX>box.*)|^(?:(?<STREETNAME>[\D\s]+)(?<STREETNO>\d+)?)[\s,]*(?:(?<ENTRANCE>(?:[XVI]{1,3})|(?<ENTRANCE>[a-z])(?=\W)|(?:[a-z]$)))?(?:[,\s]+)?(?<REST>(?:lgh|läg)\s(?<APARTMENTNO>[\w\s]+)|(?:[\w\s]+))?
Helt enkelt för att ta fram de olika delarna i en svensk gatuadress med box eller gatunamn, gatunummer, uppgång, lägenhetsnummer. Kan säkert förfinas ytterligare, men den duger för studen.