Gre*_*reg 3 c# regex parsing html-agility-pack
我的任务是构建一个解析特定网页的解析器,以便我们的员工可以将他们的用户数据批量导入我们公司的网站.
我已经利用HtmlAgilityPack来解析页面,我已将其关联table row并table data被推送到我Map班级的属性中.
然而,一栏让我感到很悲伤.由于各种各样的原因,地址栏是我身边的荆棘.
样本数据:
6313 SW 203rd Ave <br> Portland, OR 97224
16600 Lomita Way <br> El Dorado Hills, CA 95762
PO Box #42 <br> Hampton Bays, NY 11946
这些地址中的每一个都是这样包装的(显然地址可能因我们导入用户的客户而异):
<tr>
     <td> 6313 SW 203rd Ave <br> Portland, OR 97224 </td>
</tr>
我正在尝试实现一个正则表达式将其拆分到适当的区域,因此可以将其分配给相关属性:
public string Unit { get; set; }
public string Street { get; set; }
public string City { get; set; }
public string State { get; set; }
public string Zip { get; set; }
但是地址不能提供很多锚定:
问题一: 
如果我停下来,<br>那么我只是将线分开.没有完全分裂成适当的部分.
问题二: 与单个逗号相同的问题.
问题三: 如果我锚定到数值,因为Zip可能对加拿大无效,并且可能根据街道名称错误地拆分.
分隔地址项目的最佳方法是什么?用正则表达式?
解析地址很难; 真的很难.地址没有真正统一的格式,特别是跨国界.您使用单一RegEx进行此操作的可能性极低.
有关一些示例和更深入的解释,请参阅此其他帖子. 如何从文本和组件中解析自由形式的街道/邮政地址
| 归档时间: | 
 | 
| 查看次数: | 4370 次 | 
| 最近记录: |