(?ix)applies the following effective flags to the remainder of the pattern: gix i modifier: insensitive. Matches without distinguishing uppercase and lowercase letters
x modifier: extended. Ignores unescaped whitespace and comments outside character classes
Negated Character Class[^\d]+ +matches at least one character outside the set below:
\da digit
Comment: Person's Name
Group 2(.*(?:st|av|blvd|rd)) .*any character (except for line terminators), repeated any number of times
Non-Capturing Group(?:st|av|blvd|rd) stthe literal text st (case insensitive) avthe literal text av (case insensitive) blvdthe literal text blvd (case insensitive) rdthe literal text rd (case insensitive) \.?optionally matches the literal . (4610 / 568 / 2E16)
\h*any horizontal whitespace character, repeated any number of times
Comment: Number and Street
.*?any character (except for line terminators), repeated any number of times
,?optionally matches the literal , (4410 / 548 / 2C16)
\h*any horizontal whitespace character, repeated any number of times
Comment: City
{2}matches exactly 2 characters from the set below:
A-Zone character from A (6510) to Z (9010) (case insensitive)
,?optionally matches the literal , (4410 / 548 / 2C16)
\h*any horizontal whitespace character, repeated any number of times
Comment: State
\d+a digit, repeated at least once
Comment: Zip code
g modifier: global. Finds all matches instead of stopping after the first