问题描述
我需要一种方法来查找不排除包含撇号 s 的长引号的长引号。这是我的代码:
‘.{250,}(?=[\.’])(?=[,’])(?=[\?’])(?=[!’])
有两个长引号(一个带有所有格单引号 s)和一个短引号,它可以找到两个长引号。但在 InDesign 中,它只查找前面有撇号的任何 250 个字符(忽略完整点、问号、逗号和感叹号)。我认为这是因为它只在正面回顾中查看单个字符。有没有办法让它寻找两个字符?
解决方法
你可以使用
‘[^‘]{250,}[.,?!]’
参见regex demo。
详情
-
‘
-‘
字符 -
[^‘]{250,}
- 除了‘
之外的 250 个或更多字符,尽可能多(注意:这可以跨行匹配。如果您需要限制匹配到当前行仅,将换行符添加到否定字符类中,[^‘\r\n]{250,}
) -
[.,?!]
-.
、,
、?
或!
字符 -
’
- 一个’
字符。