Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP/mysql中的街道地址强匹配算法_Php_Mysql - Fatal编程技术网

PHP/mysql中的街道地址强匹配算法

PHP/mysql中的街道地址强匹配算法,php,mysql,Php,Mysql,我正在处理一项任务,以确定我的数据库中是否已经存在新输入的地址。目的是防止具有相同地址的成员再次注册。我想智能地将新地址与数据库中现有的地址进行匹配。比如说, “152 Skyline Drive”与“152,skyln Dr”类似,但“153 Skyline Drive”不同 我目前使用的是similor\u text(),它只匹配字符串,忽略了一个简单的事实,152和153是一个不同的地址。它只给了我一个匹配的百分比。这种方法的消极面比积极面更多 有人能帮忙吗?您最好将不同的地址组件(房屋、

我正在处理一项任务,以确定我的数据库中是否已经存在新输入的地址。目的是防止具有相同地址的成员再次注册。我想智能地将新地址与数据库中现有的地址进行匹配。比如说,

“152 Skyline Drive”与“152,skyln Dr”类似,但“153 Skyline Drive”不同

我目前使用的是
similor\u text()
,它只匹配字符串,忽略了一个简单的事实,
152
153
是一个不同的地址。它只给了我一个匹配的百分比。这种方法的消极面比积极面更多


有人能帮忙吗?

您最好将不同的地址组件(房屋、街道、城市、州、国家)存储在不同的字段中,并对其运行查询

您可以构建一个启发式方法,从格式错误的地址中提取元素

  • 豪斯总是一个数字,排在第一位
  • 街道,圣路,博士,博士路是同义词
但是,知道“skyln Dr”和“skyline drive”是相同的,需要一些机器学习能力。除非您有可用的数据集,并且您的作业明确要求,否则不要进入该兔子洞: