Comment: ########################################################################
Comment: Matches against Australian postal addresses
Comment: [<floor> <number>]
Comment: [<unit type>] [<unit>] <house number> <street name> <street type>
Comment: [<anything trailing>
Comment: ########################################################################
Non-Capturing Group(?:(?P<c_level_type>level|lvl|floor|flr)\s*(?P<c_level_number>\w+),?\s*)? ?repeats the group contents below at most once:
Group c_level_type(?P<c_level_type>level|lvl|floor|flr) levelthe literal text level (case insensitive) lvlthe literal text lvl (case insensitive) floorthe literal text floor (case insensitive) flrthe literal text flr (case insensitive) \s*a Unicode whitespace character, repeated any number of times
Group c_level_number(?P<c_level_number>\w+) \w+a Unicode word character, repeated at least once
,?optionally matches the literal , (4410 / 548 / 2C16)
\s*a Unicode whitespace character, repeated any number of times
Comment: Level (floor, etc)
\s*a Unicode whitespace character, repeated any number of times
,?optionally matches the literal , (4410 / 548 / 2C16)
\s*a Unicode whitespace character, repeated any number of times
Comment: Optional comma
Non-Capturing Group(?:(?P<c_unit_type>[[:alpha:]][\w-']*)?\s*)? ?repeats the group contents below at most once:
Group c_unit_type(?P<c_unit_type>[[:alpha:]][\w-']*)? ?repeats the group contents below at most once:
Character Class[[:alpha:]] [:alpha:]an alphabetic character \p{L}
*matches any number of characters from the set below:
\wa Unicode word character
-the literal - (4510 / 558 / 2D16)
'the literal ' (3910 / 478 / 2716)
\s*a Unicode whitespace character, repeated any number of times
Comment: Type (suite, unit, etc)
Non-Capturing Group(?:(?P<c_unit_number>[\w\.]*(?!\d))\s*[,\/]*\s*)? ?repeats the group contents below at most once:
Group c_unit_number(?P<c_unit_number>[\w\.]*(?!\d)) *matches any number of characters from the set below:
\wa Unicode word character
\.the literal . (4610 / 568 / 2E16)
\da Unicode decimal digit
\s*a Unicode whitespace character, repeated any number of times
*matches any number of characters from the set below:
,the literal , (4410 / 548 / 2C16)
\/the literal / (4710 / 578 / 2F16)
\s*a Unicode whitespace character, repeated any number of times
Comment: Unit
Group c_house_number(?P<c_house_number>\pN+[[:alpha:]]?(?:\s*[-\/\pP]\s*\pN+[[:alpha:]]?)*) \pN+a decimal digit, letterlike number, or other numeric character, repeated at least once
Character Class[[:alpha:]]? ?matches at most one character from the set below:
[:alpha:]an alphabetic character \p{L}
Non-Capturing Group(?:\s*[-\/\pP]\s*\pN+[[:alpha:]]?)* *repeats the group contents below any number of times:
\s*a Unicode whitespace character, repeated any number of times
-the literal - (4510 / 558 / 2D16)
\/the literal / (4710 / 578 / 2F16)
\pPa punctuation character
\s*a Unicode whitespace character, repeated any number of times
\pN+a decimal digit, letterlike number, or other numeric character, repeated at least once
Character Class[[:alpha:]]? ?matches at most one character from the set below:
[:alpha:]an alphabetic character \p{L}
Comment: House number
\s*a Unicode whitespace character, repeated any number of times
,?optionally matches the literal , (4410 / 548 / 2C16)
\s*a Unicode whitespace character, repeated any number of times
Comment: Optional comma
Group c_street_name(?P<c_street_name>[\w-\s]*?) *?matches any number of characters from the set below:
\wa Unicode word character
-the literal - (4510 / 558 / 2D16)
\sa Unicode whitespace character
Comment: Street name
\s+a Unicode whitespace character, repeated at least once
\ba Unicode word boundary
Group c_street_type(?P<c_street_type>fire\s*track|right\s*of\s*way|service\s*way|shopping\s*centre|state\s*highway|\w{2,}) 1st Alternativefire\s*track 2nd Alternativeright\s*of\s*way 3rd Alternativeservice\s*way 4th Alternativeshopping\s*centre 5th Alternativestate\s*highway \ba Unicode word boundary
Comment: Street type
Non-Capturing Group(?:\s*\R+(?P<c_trailing>.+))? Comment: Trailing data not captured