或检索与括号分组:~ 和 () 的正确写法
空格是"与",减号是"非",剩下这个波浪号就是"或"。
~ 的用法
~cat ~dog:返回带 cat 或 dog(或两者都有)的帖子,即并集。- 与其他语法混用时效果可能打折,复杂需求优先用括号分组。
括号分组
( ~cat ~tiger ~leopard ) ( ~dog ~wolf ):猫科三选一到多个,并且犬科二选一到多个。- 规则细节很关键:左括号后、右括号前必须留一个空格。写成
(~cat ~tiger)可能被误解析——站内存在带括号的标签(如 wolf_(lol)),紧贴括号会被当成标签的一部分。 - 分组可以嵌套:
( ~( felid -leopard ) ~( leopard tiger ) ) dog这类组合都是合法的。
把三种关系连起来想
用集合思维最不容易乱:
A B= 交集(都带)~A ~B= 并集(带其一)A -B= 差集(带 A 且不带 B)
为什么"或检索"很有用
物种之间有层级(见 标签别名与包含关系),但同级的猫科动物之间没有包含关系——想一次搜"大猫们",~tiger ~leopard ~jaguar 就是最直接的写法。
波浪号前后不需要加空格,括号必须加;这条差异是新手最常见的报错来源。