E3.17.2fuzzy pinyin abbreviation match设计

过滤应支持拼音、缩写等模糊匹配方式

别名: 拼音过滤 · initials match · 模糊匹配

概念解释

过滤不能只做「从左到右的原文前缀」。中文用户会键入拼音或首字母,英文用户会键入缩写或词中间的片段,组织里的人会键入工号、邮箱前缀。模糊匹配(fuzzy match)在这里是一组被产品承认的键入习惯:拼音、缩写、子串、常见别名,而不是无约束的拼写纠错。匹配过严,知道对象是谁的人会得到空名单,然后以为选项不存在,改去滚动。匹配过宽,又会在「一」上倒下整份名单。宽严要落在「这个人已经认得目标」的那类查询上。

机制

人记住的往往不是界面上的显示名。中文显示名的检索键是拼音;专名的检索键是约定缩写(「人大」对「中国人民大学」);雇员的检索键可能是英文名或工号。只对显示名做前缀,等于只服务那些把标签抄进搜索框的人。失败时用户很少改用「正确」的全文,他们会判定搜索坏了。

拼音还涉及多音与简拼。zhang 应打到「张」,zg 在人名场景里应打到「张国」。英文缩写 NY 应打到 New York。这些规则要按字段类型打开,不能在颜色名上 equally 启用工号匹配。别名表(曾用名、英文名)属于数据,不属算法炫技,但过滤必须查到它们。

边界

安全敏感的精确匹配(账号、证件号)不应模糊到「差不多的号也出来」。极短查询(单字母)应延迟或要求第二字符,以免整表闪烁。外语键盘没有拼音时,应能用原文;不要做成「只会拼音」。纠错式模糊(把 colour 打成 collor 仍命中)成本高、误伤大,不是这条的默认含义——这里优先的是有意识的缩写和拼音,不是拼写检查。排序上,精确命中应压过缩写命中,否则短查询会把不相关的热门项顶到最前。

怎么落地

  • 按字段类型打开拼音、简拼、子串、别名;在过滤说明里举一个真例子(「可输入拼音或工号」)。
  • 精确匹配排在前面,缩写命中随后;不要让模糊结果淹没完全匹配。
  • 单字符查询要节制,避免名单在每个按键下剧烈闪烁。
  • 验证:用显示名、拼音、公认缩写各查一次同一对象。有一次落空,匹配就还停在原文前缀上。

延伸

  • 同组E3.17.1 选项过多时应提供搜索框而非依赖滚动查找 · E3.17.3 过滤结果为空时需给出明确提示而非空白 · E3.17.4 已选项在过滤后仍需保持可见或可追踪
  • 相邻E5.14 命令面板 · E2.16 自动补全下拉
  • 站内检索pinyin match · abbreviation filter · fuzzy select

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/E3.17.2