Rays 中文文档 下载 App

正则进阶:排除、边界、组合条件的写法

否定:排除某些结果

Rays 可能不直接支持标准的否定前瞻语法((?!...)),但可以通过组合搜索域和正则来实现类似效果。

思路:先收窄,再精确

想搜包含"原神"但不包含"崩坏"的图:

  1. 把搜索域限定为仅标签
  2. 开正则,搜 .*原神.*
  3. 在结果里手动排除含"崩坏"标签的

或者,如果设备上的正则实现支持否定字符类:

正则含义
原神[^崩]*$以"原神"开头、后面不含"崩"的内容

⚠️ 否定语法因正则引擎实现不同可能有差异,以你设备上 Rays 的实际支持情况为准。如果不行,回到"先收窄再筛选"的思路。

分组:用括号组织复杂条件

当 AND 和 OR 组合出现时,用括号明确优先级。

没有括号时

原神 派蒙|崩坏

正则引擎的理解可能是 (原神 AND 派蒙)OR 崩坏——即"同时包含原神和派蒙,或者只包含崩坏"。

有括号时

原神 (派蒙|纳西妲)

明确表示 原神 AND (派蒙 OR 纳西妲)——即"包含原神,且同时包含派蒙或纳西妲"。

分组练习

假设你想搜:(包含原神 AND 派蒙)OR(包含崩坏)OR(包含崩铁 AND 星穹)

写成正则:

(原神 派蒙)|崩坏|(崩铁 星穹)

注意每个括号组内部的空格还是表示 AND。

混合 AND/OR 的典型场景

场景一:多标签组合

你想找的表情:有原神标签,且有派蒙或纳西妲标签

正则(搜索域设为标签):原神 (派蒙|纳西妲)

效果:标签里同时包含"原神"和"派蒙",或者同时包含"原神"和"纳西妲"。

场景二:排除某些类别

你想找所有原神相关但不是截图的表情。假设你的标签体系里,"原神截图"是一个单独标签:

  1. 搜索域设为标签
  2. 搜 ^原神$|^派蒙$|^纳西妲$ —— 排除了"原神截图"这个标签(因为它不等于"原神")
  3. 结果里都是纯角色标签的图,不包含"截图"相关

场景三:精确到特定情绪

你想找同时有"原神"标签且带"无语"情绪的图,但你的标签体系里"无语"和"派蒙无语"是两个独立标签:

正则:原神 (无语|派蒙无语)

量词:可选和次数匹配

正则含义示例
原神.?截图原神和截图之间有 0 或 1 个任意字符原神截图、原神x截图
原神.{0,3}截图原神和截图之间有 0-3 个任意字符原神截图、原神的截图、原神de截图

量词在表情搜索里用得比较少——表情标签通常是完整的中文词组,不太需要模糊中间字符。

常见正则陷阱

陷阱一:忘记开正则开关

你写了 ^原神$ 但忘了开正则开关——Rays 会把它当作普通关键词搜,结果出来的是包含这整个字符串(包括 ^ 和 $)的图。

养成习惯:写了正则就检查一下开关是否打开。

陷阱二:中文标点混入

不要在正则里混用中文标点——原神|崩坏(中文全角竖线)和 原神|崩坏(英文半角竖线)效果完全不同,后者才是正则的 OR。

养成习惯:写正则前把输入法切到英文模式。

陷阱三:AND 和 OR 的优先级搞反

原神 派蒙|崩坏 和 原神 (派蒙|崩坏) 是两个不同的搜索。前者是 (原神 AND 派蒙) OR 崩坏,后者是 原神 AND (派蒙 OR 崩坏)。结果差异很大。

进阶用法一句话

正则进阶的核心是括号分组——遇到多条件组合,用括号明确哪些是 AND、哪些是 OR。否定和量词在表情搜索里不是高频场景,需要时再查文档。