InDesign GREP 规则可能有点令人费解。假设您想要一个带有 GREP 样式规则的段落样式,该规则将字符样式应用于除某个字符之后的文本之外的所有内容。不适用于某个字符之后的字符,但适用于其他所有字符的东西?
例如,想象一长串文章标题。有些是短标题,有些是两个部分,一个短标题,然后是冒号,然后是详细说明。您希望强调整个短标题,并在长标题中强调包括冒号在内的所有内容:
- 安哥拉加法器
- Brilliant Badgers:英国最强壮的野兽
- 加拿大沿海鲤鱼的旅行热潮
- 危险:丹麦卑鄙的鸭子
我已经尝试了一堆规则,但似乎没有一个适用于此。我认为可能使用“消极的后视”之类的(?<!:.*).
东西,但似乎没有任何效果:看起来“后视”和“前瞻”只能应用于你正在寻找的角色之前的角色为了。
任何 GREP 专家有任何想法吗?
这是我经过大量浏览和反复试验后发现的一件事,我认为在逻辑上应该可行,但由于我无法弄清楚的原因,它不起作用:
\<[^:]*|\<[^:]*:
从理论上讲,这应该意味着“从段落开始到第一次运行不是':'的字符结束,或者,如果从段落开始到一个字符运行不是':' ':',抓住包括 ':' 在内的那个。
在实践中,它只适用于一切。想不通为什么。