看到这个问题我特意用客户端试了一下
初步感觉是这样的
把游戏名拆分成一个个单词(感觉就是通过“ ”,“-”这些字符拆分的),把除了首位的特殊符号都去掉(如果只单个查特殊符号,只会识别到首位是特殊符号的游戏),把希腊字母或其他乱七八糟语言的数字提取出来(所以用5可以搜到GTAV,用6可以搜到彩虹六号rainbow six)。最后针对每个字母进行检索比对(只与一个词的首字母比对 不会提取子序列)还有这个过程中如果有很多的结果,会优先把你库里的和愿望单里的显示出来,其次是推荐的,热度高的和有优惠的。
下面总结一下
首先对于字母
将游戏的单词名切分成多个单词并将每个单词从首字母开始比对,完全相同就会把这个游戏放到查询结果里
其次是字符
他只会提取游戏名首字母进行比对,并不会把中间出现的字符放到查询结果里
最后是数字
他会吧其他所有语言(试了一下希腊数字,阿拉伯数字,英文都可以相互通用)的数字存一起查找
比如我写2 或者 two 或者 II 都可以找到 dota 2
还有在实验的时候发现三个很有意思的事情
1. 只输入单个字符& 会得到一群没有&符号但是有其他符号的游戏
2.所有搜索的结果下拉框都只显示五项,除了c(不确定是不是我的问题?你们可以试试直接搜c,下拉框会出现10个游戏)
3.dota 2 很玄学,我想不明白为什么我输入t可以搜到(并且还是下拉框第一个),但是输入o和a都不行(难道他划分的时候真的是划分成do 和 ta?)
下附三种情况截图:
fenx 1年前
发布