| 分享时间 | 14小时35分钟前 |
| 最后更新 | 14小时27分钟前 |
| 修订版本 | 2 |
| 用户许可 | -未设置- |
| Quicker版本 | 2.1.13 |
| 动作大小 | 7 KB |
超级匹配 是一个智能的“字典式”筛选工具,它可以根据你提供的一个 查询列表(lookFor),在另一个 数据表(allStr)中快速查找对应的 匹配值(例如学号、编号、邮箱等),并按照原始顺序输出结果。
亮点:自动识别姓名列 —— 无需事先知道数据表是“姓名→编号”还是“编号→姓名”,动作会通过统计自动判断,适配任意两列数据。
动作需要两个输入源,都通过剪贴板或选中文本获取:
| 输入变量 | 内容说明 | 获取方式 |
|---|---|---|
| lookFor | 查询列表,每行一个要查找的关键词(如姓名) | 第一步会自动读取剪贴板内容存入 |
| allStr | 数据表,每行两个字段(以制表符或空格分隔),两列中一列是关键词,另一列是要提取的值 | 第二步会读取当前选中的文本存入(需手动选中后触发动作) |
📌 操作流程
复制你要查找的“关键词列表”到剪贴板。
选中包含“数据表”的文本(例如从 Excel、文本文件等)。
运行动作,即可自动完成匹配,并将结果存入剪贴板。
动作会自动判断数据表中哪一列是“关键词列”(即与 lookFor 匹配的列),哪一列是“值列”,具体方法:
统计 allStr 的第一列和第二列中,分别有多少个值出现在 lookFor 列表里;
匹配次数较多的一列被视为关键词列,另一列即为目标值列;
如果两列匹配次数相同,默认将第一列作为关键词列。
🧠 这意味着:无论你的数据表是
姓名\t学号还是学号\t姓名,动作都能正确处理,完全不用你操心。
匹配完成后,动作会:
按 lookFor 的原始顺序,每行输出一个对应的“值”(如学号)。
如果某个关键词在数据表中 找不到,则该行输出 NCF(Not Found 的缩写)。
最终结果会:
存入系统剪贴板(可直接粘贴使用);
同时存入一个名为 result 的动作变量(方便后续步骤调用)。
薛一诺 冯永珉 贾文烁 唐浩 武博
253206 冯永珉 253219 武博 253231 薛一诺 253225 唐浩 253243 贾文烁
253231 253206 253243 253225 253219
如果某个姓名(如“张伟”)不在表中,则输出 NCF。
| 项目 | 说明 |
|---|---|
| 分隔符 | 默认支持 制表符 \t 和 空格,如果你的数据用逗号等其他字符,可在 C# 脚本中修改 Split(new char[] { '\t', ' ' }, ...) 部分 |
| 重复关键词 | 若数据表中同一关键词出现多次,默认取最后一次出现的对应值 |
| 空行处理 | 自动忽略空行,不会影响结果行数 |
| 输出格式 | 默认只输出值(每行一个),如需同时输出“关键词+值”,可修改脚本中的 result.Add(val) 为 result.Add(name + "\t" + val) |
| 错误提示 | 若输入变量缺失或数据表无效,会弹出消息框提示 |
根据名单从表格中提取对应的编号/ID/学号等;
批量查数据(如电话簿、工号对照);
从多行文本中按特定顺序筛选信息;
快速实现“VLOOKUP”式查找,无需 Excel 公式。
| 修订版本 | 更新时间 | 制品 | 审核状态 | 更新说明 |
|---|---|---|---|---|
| 2 | 14小时27分钟前 | V1 | 审核通过 当前公开 V1 | 增加了使用说明 |
| 1 | 14小时35分钟前 | V1 | 待审核 |