从逗号开始提取子字符串,向右移动,直到您到达空格

时间:2014-10-25 00:23:27

标签: regex excel

我在一列中有一系列地址。我正在尝试将每个组件(街道地址,城市,州和邮政编码)提取到单独的列中。

我能够用`= RIGHT(A1,5)'轻松地提取邮政编码。但是,我很难拔出这座城市。所有行都遵循以下相同的格式。我的想法是找到逗号,并从右到左提取子​​字符串,直到得到一个空格。我该怎么做呢?

以下是数据的示例:

2209 Fake Street Arlington, TX 76015
3100 Fake Street Bedford, TX 76021
3558 Fake Street Flower Mound, TX 75028
4230 Fake Street Fort Worth, TX 76119
2662 Fake Street Bedford, TX 76021

1 个答案:

答案 0 :(得分:2)

这只适用于有一个单词的城市。并且寻找城市名称开头的地址类型(道路,街道等),在没有类型的情况下不会工作。我想如果您的布局在街道和城市之间没有唯一的分隔符,那么您可能需要一个邮政编码查找表来获取该城市。

此外,您需要使用代码来解决两个不同城市拥有相同邮政编码的问题。例如,在德克萨斯州,76119可以指FORT WORTH,FOREST HILL或FT WORTH。而且你可能需要代码来处理拼写错误。

这些可能足以让人工纠正。