совпадение почтового адреса с регулярным выражением

Хотя я знаю, что сопоставление адреса улицы никогда не будет идеальным, я хочу создать пару операторов регулярных выражений, которые будут приближаться в большинстве случаев.

Я пытаюсь выделить адрес. У меня отстой с регулярным выражением, и я пытался приблизиться, но может ли кто-нибудь помочь мне понять, как я могу это сделать лучше?

строка:

6:00 - 23:00, Palma Sola Elementary, 6806 Fifth Ave NW, Bradenton, FL 34209 Приходите и найдите рядом с dsfsd sa fsa fasdf asfsds 5001 west ваша мама здесь не живет мой ford ranger 2005 года,

Regex 1:

/ \ s + (\ d {2,5} \ s +) ( ?! [a | p] m \ b) (([a-zA-Z | \ s +] {1,5}) {1,2})? ([\ s | \, |.] +)? ( ([a-zA-Z | \ s +] {1,30}) {1,4}) (суд | ct | street | st | drive | dr | lane | ln | road | rd | blvd) ([\ s | \, |. | \;] +)? (([a-zA-Z | \ s +] {1,30}) {1,2}) ([\ s | \, |.] +)? \ b (AK | AL | AR | AZ | CA | CO | CT | DC | DE | FL | GA | GU | HI | IA | ID | IL | IN | KS | KY | LA | MA | MD | ME | MI | MN | MO | MS | MT | NC | ND | NE | NH | NJ | NM | NV | NY | OH | OK | OR | PA | RI | SC | SD | TN | TX | UT | VA | VI | VT | WA | WI | WV | WY) ([\ s | \, |.] +)? (\ S + \ d {5})? ([\ S | \, |.] +) / I

(Иногда там только улица и город, но нет штата или индекса)

регулярное выражение 2:

/ \ b (\ d {2,5} \ s +) (?! [a | p] m \ b) (NW | NE | SW | SE | север | юг | запад | восток | n | e | s | w)? ([\ S | \, |.] +)? (([A-zA-Z | \ s +] { 1,30}) {1,4}) (court | ct | street | st | drive | dr | lane | ln | road | rd | blvd) / i

Поиграйте с это: http: // jsfiddle.net / isuelt / rMC6P / 11 /

19
задан cHao 26 November 2012 в 06:09
поделиться