Parsing 如何从字符串中提取地址?

Parsing 如何从字符串中提取地址?,parsing,geolocation,geocoding,google-geocoder,Parsing,Geolocation,Geocoding,Google Geocoder,问题是: 比如说,我们有一个类似于的字符串“一些餐厅位于华盛顿特区西北17街750号,邮编20006,早上8点开门” 任务是从这样的字符串中获取地址。因此,切割部分应为:750 17街西北,华盛顿特区20006。但是,没有固定的地址格式,也没有关于它的规则。对于任何地图服务来说,任何精确的东西都应该被视为地址。也可以是这样的: "at 750 17th St NW, Washington, DC 20006 there is some restaurant and it's opened at

问题是:

比如说,我们有一个类似于
的字符串“一些餐厅位于华盛顿特区西北17街750号,邮编20006,早上8点开门”

任务是从这样的字符串中获取地址。因此,切割部分应为:
750 17街西北,华盛顿特区20006
。但是,没有固定的地址格式,也没有关于它的规则。对于任何地图服务来说,任何精确的东西都应该被视为地址。也可以是这样的:

"at 750 17th St NW, Washington, DC 20006 there is some restaurant and it's opened at 8am"

我的任务是从字符串中提取地址,并避免提取不是地址的部分。我很快意识到这个问题真的很复杂。我可以连接到一些地理编码API,但我将发送到那里的字符串仍然包括句子的其余部分

你们对这些问题有什么想法或经验吗


具体的实现语言在这里不是很重要。

如果地址在字符串中的位置未知,但地址在某种程度上是可格式化的,那么您可以提出一些正则表达式解决方案


如果地址的格式确实会发生变化,并且正则表达式还不够,那么监督学习就是解决方案。

如果地址在字符串中的位置未知,但地址在某种程度上是可格式化的,那么您可以提出一些正则表达式解决方案


如果地址的格式确实会发生变化,并且正则表达式还不够,那么,监督学习就是解决方案。

我很想听到你将编写一个与所有预期类型的地址/位置描述匹配的正则表达式……我很想听到你将编写一个与所有预期类型的地址/位置描述匹配的正则表达式…
"there are many restaurants in Washington, DC"