拼音检索助手
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f1b049da/jda20260977
技能介绍
问题场景
联系人列表里存着「张伟」「李秀兰」,搜索框却只能精确命中中文。用户输入 zhang 或 zs 时一无所获,通讯录的按首字母排序也无从下手。手动维护一份拼音字段,既容易漏,又会在批量导入后彻底失守。
核心能力
这个技能基于 pinyin-pro 生成检索键,同时产出两串:无音调小写全拼 zhangsan 和首字母串 zs。
- 保存客户/联系人时,在写入中文名的同时落盘这两个字段
- 搜索时用
name.includes或pinyin.includes/pinyinInitials.startsWith组合匹配,中文与拼音一次命中 - 通讯录排序可直接读取首字母串,不必重复计算
实现要点在代码中标注 小四原创,便于后续维护时区分原始逻辑与通用逻辑。
关键决策与边界
- 多音字取库默认值,业务有特殊读音时用词典覆盖,不要自行猜
- 非汉字字符的策略要写清楚:原样保留还是剔除,必须在代码里显式决定,不能含糊
- 公司名里混有英文(如「IBM 中国」)时,行为要符合事先约定,建议先跑一遍自测用例确认
- 典型自测:
张三→zhangsan/zs;含英文的公司名按约定处理
注意事项
- 不要把拼音当作唯一主键,它只是检索辅助字段,主键仍是业务 ID
- 不要用错误的简繁转换冒充拼音转换
- 不要强制用户只按拼音录入中文名,中文名永远是主数据
使用场景
- 通讯录导入后,为缺失拼音字段的批量记录自动补充全拼和首字母,解决按首字母排序失效的问题。
- 在客户管理后台的搜索框中,让用户输入拼音首字母或全拼,快速定位到对应的中文客户名。
- 当公司名称中包含英文字母和汉字时,按约定保留非汉字字符并生成检索键,确保混合名称能被正确搜索。
- 在录入新客户时,自动生成拼音检索键并写回数据库,避免后续因手动漏填导致搜索功能失效。
适合人员
- 负责客户管理系统开发的研发工程师,需要在搜索接口中支持中文与拼音混合匹配,降低用户查询成本。
- 每周处理大量联系人导入的运营人员,需要在数据清洗环节自动补齐拼音字段,以便按首字母归档通讯录。
- 负责维护企业通讯录的后端开发者,需要解决因历史数据缺失拼音检索键导致的排序和搜索失效问题。