在计算机科学中,字符串模糊匹配( fuzzy string matching)是一种近似地(而不是精确地)查找与模式匹配的字符串的技术。换句话说,字符串模糊匹配是一种搜索,即使用户拼错单词或只输入部分单词进行搜索,也能够找到匹配项。因此,它也被称为字符串近似匹配。
字符串模糊搜索可用于各种应用程序,例如:
拼写检查和拼写错误,拼写错误纠正程序。例如,用户在Google中键入“Missisaga”,将返回文字为“Showing results for mississauga”的点击列表。也就是说,即使用户输入缺少字符、有多余的字符或者有其他类型的拼写错误,搜索查询也会返回结果。
可以使用软件检查重复的记录。例如,如果客户由于他们的名称拼写不同(例如Abigail Martin和Abigail Martinez)(也可能由于错误输入电话号码)在数据库中被多次列出了不同的购买行为,那么就会出现一个新地址。
重复数据删除技术,它可不像听起来那么容易,尤其是如果你有数十万条记录的话。即便是Expedia也没法100%正确:
这篇文章将解释字符串模糊匹配及其用例,并使用Python中Fuzzywuzzy库给出示例。
每个酒店都有自己的命名方法来命名它的房间,在线旅行社(OTA)也是如此。例如,同一家酒店的一间客房Expedia将之称为“Studio, 1 King Bed with Sofa Bed, Corner”,Booking.com(缤客)则简单地将其显示为“Corner King Studio”。