关键词 vs 正则:什么时候用哪个
一句话结论
先用关键词 + 搜索域——结果满足就直接用,结果不行再考虑正则。正则是精确收窄的二次工具,不是每次都开。
决策流程
你想搜点什么
│
├─ 记得具体关键词吗?
│ ├─ 记得 → 关正则,直接搜关键词
│ │ │
│ │ ├─ 结果太多太杂?→ 收窄搜索域(关掉 OCR、只搜标签)
│ │ │
│ │ ├─ 结果还是不准?→ 开正则收窄(整词/OR)
│ │ │
│ │ └─ 结果太少?→ 扩大搜索域(开全字段)或换更短的关键词
│ │
│ └─ 只记得长相 → 用相似搜索(正则帮不上忙)
│
└─ 记得多个关键词的关系吗?
├─ 全部要包含(AND)→ 关正则,用空格分隔:原神 派蒙
│
├─ 任一即可(OR)→ 开正则,用 |:原神|崩坏
│
└─ 有分组条件 → 开正则 + 括号:(原神 派蒙)|(崩坏 琪亚娜)
场景对号入座
场景:日常斗图找图
| 需求 | 推荐方式 | 理由 | |
|---|---|---|---|
| 找派蒙相关的 | 关正则,搜"派蒙" | 大部分时候结果足够用 | |
| 找"无语"情绪的 | 关正则,搜"无语" | 同上 | |
| 找派蒙 或 纳西妲 | 开正则,`派蒙\ | 纳西妲` | OR 需求普通搜索做不到 |
| 找同时有原神 且 派蒙标签的 | 关正则,搜"原神 派蒙" | AND 空格分隔就够了 | |
| 找 OCR 里带"好的收到"的 | 搜索域选 OCR,关正则,搜"好的收到" | 限定搜索域比正则更直接 |
场景:定期整理表情库
| 需求 | 推荐方式 | 理由 | |
|---|---|---|---|
| 找出所有打了"原神"标签的图 | 搜索域选标签,开正则,^原神$ | 整词匹配避免混入"原神截图" | |
| 找出所有标签里有"崩"的 | 搜索域选标签,关正则,搜"崩" | 模糊匹配,包含崩坏、崩铁等 | |
| 找出标题里带"截图"的 | 搜索域选标题,关正则,搜"截图" | 限定字段就够了 | |
| 找出所有标签里不含"截图"的原神图 | 搜索域选标签,开正则,`^原神$ | ^派蒙$` | 整词匹配天然排除了"原神截图" |
正则不该用的时候
不该:为了炫技开正则
你就是想搜"派蒙",结果开了正则写了 .*派蒙.*——效果和关正则搜"派蒙"一模一样,完全多余。
不该:用正则代替搜索域
你想只搜标签里的"原神",结果不调搜索域、开正则写了 ^原神$——如果搜索域包含 OCR,OCR 识别出的"原神截图"(不等于"原神")不会被匹配到,但标签完全等于"原神"的图应该能被找到。不过直接把搜索域设为仅标签更清晰。
不该:正则语法记不全硬写
正则语法量大,没必要全记。遇到复杂需求时:先想能不能用关键词 + 搜索域搞定;不行再查正则速查表;还不行就换思路(比如分两次搜、先用相似搜索再筛选)。
正则该用的时候
- OR 逻辑 —— 搜原神或崩坏,任一即可(普通搜索做不到)
- 整词精确匹配 —— 只搜标签完全等于"原神",不要"原神截图"这类
- 复杂 AND/OR 组合 —— (原神 AND 派蒙)OR 崩坏这类分组条件
其他场景,关键词 + 搜索域是你的第一选择。