【发布时间】:2021-12-28 14:15:57
【问题描述】:
我正在开发带有 PHP 后端的 Vue-Vuetify 应用程序。
我正在接收包含名字、姓氏和一些现在对我不重要的更多详细信息的联系人列表。
如何在忽略所有特殊字符的情况下搜索该列表?
让我解释一下我需要什么。
示例名称:
Janko Hraško(在我的语言中,我们的名称包含特殊字符,例如 ľščťžýáí...)。
目前,当我尝试在该列表中查找某些内容时,我可以按名字和姓氏进行搜索,例如,当我写 Janko 时,我会找到这个人,当我写 Hraško 时,我会找到同一个人。
第一个问题是,我可以以某种方式将它们合并在一起吗?像这样:
我会写 Jan(人会出现,但可能有更多同名和不同姓氏的人,所以它会显示从 Jan 开始的所有名字......)。
然后我放空格并写 Hra(现在只显示 1 个人)。
所以我的意思是搜索结合名字和姓氏而不输入全名。
第二个问题,我怎样才能忽略特殊字符?目前,当我写 Hrasko 时,什么都不会出现,但是当我写 Hraško 时,会列出一个人。
是否可以忽略所有特殊字符并不进行搜索?像 Hrasko、Kovac 等......
我的代码在这里:(Vue.app)
computed: {
filteredContacts (){
if(this.search){
return this.contact_list.filter((item)=>{
return item.firstname.toLowerCase().startsWith(this.search) || item.lastname.toLowerCase().startsWith(this.search) ||
item.firstname.startsWith(this.search) || item.lastname.startsWith(this.search);
})
}else{
return this.resources;
}
}
}
谢谢大家的帮助!
【问题讨论】:
标签: javascript vue.js search vuetify.js