Java应用中的模糊匹配难题
问题
用户通过下拉框输入关键字缩小搜索范围,但名称可能重复(如“阿三”有多人),因此希望添加地址进行模糊匹配(如“阿三 成都”)。然而,后端工程师表示难以实现。
疑问
立即学习“Java免费学习笔记(深入)”;
答案
切割字符串后再匹配不可行,原因是:
- 名字本身包含空格:例如,“李大卫”在切割后会得到“李”和“大卫”,而模糊匹配需要将两个单词匹配在一起。
- 模糊匹配需要灵活的匹配策略:例如,用户可能输入“成都市”,而切割后会得到“成都”和“市”,这将导致匹配失败。
因此,为了实现模糊匹配,需要使用专门的SQL模糊匹配技术,如CONTaiNS或LIKE。