为了账号安全,请及时绑定邮箱和手机立即绑定

RegEx用于匹配单行标准USPS地址

RegEx用于匹配单行标准USPS地址

PHP
繁华开满天机 2021-04-29 13:09:58
我正在学习如何从数据字符串中提取数据以定义为变量并根据需要使用。我每次解析的数据源都是标准电子邮件,每次的地址标点和格式都完全相同。唯一的区别是,有时邮政编码可能是9位代码。123 Riverview Pkwy, Orlando, FL 55556123 Riverview Pkwy, Orlando, FL 55556-1234我能够像这样提取城市:preg_match('/, (.*?)\,/', $xaemailpaste, $insuredcity1);$insuredcity = $insuredcity1[1];那将完美地返回“ Orlando”,但是我无法获得地址,州或邮编。有人可以帮我用正则表达式为每个组件分配变量吗?$streetaddress = 123 Riverview Pkwy $city = Orlando$state = FL$zip = 55556我在regex上取得了一些成功,我很高兴能学到更多,但是我花了2天时间尝试并查找可以尝试的东西,但我无法完全满足我的确切需求。

1 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

此RegEx可以帮助您将地址分为几类,您可以在其中简单地提取列出的变量:

([0-9]+)\s([A-Za-z0-9\-\s]+)\,\s([A-Za-z\s]+)\,\s([A-Z]{2})\s([0-9\-]{5,10})

//img1.sycdn.imooc.com//6094cf8c0001320506180550.jpg

如果愿意,您可以处理此RegEx并创建其他边界。它当前有五个组(),其中$2to$5是您的目标变量。


查看完整回答
反对 回复 2021-05-07

添加回答

代码语言

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号