GREP查找不带结束撇号的字符序列

GREP查找不带结束撇号的字符序列,grep,adobe-indesign,grep-indesign,Grep,Adobe Indesign,Grep Indesign,我试图在我正在编辑的文本中找到长引号,以便对它们应用不同的样式。我试过这个GREP: ~[.{230}(?!~) 我需要的是GREP查找任何230个字符,前面有左引号/开始引号,不包括任何230个字符序列,包括后跟右引号/结束引号的字符。这将从搜索中删除少于230个字符的引号。我的GREP找到正确的长度序列,但不排除包含右引号的序列 所以我想找到我的GREP所做的: 但不是这个,我的GREP也发现: 因为它有一个结束引用,所以我把它归类为短引用 有什么想法吗?TIA您可以匹配开头的,后跟23

我试图在我正在编辑的文本中找到长引号,以便对它们应用不同的样式。我试过这个GREP:

~[.{230}(?!~)

我需要的是GREP查找任何230个字符,前面有左引号/开始引号,不包括任何230个字符序列,包括后跟右引号/结束引号的字符。这将从搜索中删除少于230个字符的引号。我的GREP找到正确的长度序列,但不排除包含右引号的序列

所以我想找到我的GREP所做的:

但不是这个,我的GREP也发现:

因为它有一个结束引用,所以我把它归类为短引用


有什么想法吗?TIA

您可以匹配开头的
后跟230次或更多次出现的任何字符,开头或结尾引号除外

若要与结束引号不匹配,可以使用正向前瞻来断言它

‘[^‘’]{230,}(?=’)
  • 匹配
  • [^']{230,}
    使用
  • (?=”)
    正向前瞻,直接在右侧断言

请参见。

您可以匹配开头的
后跟230次或更多次出现的任何字符,开头或结尾引号除外

若要与结束引号不匹配,可以使用正向前瞻来断言它

‘[^‘’]{230,}(?=’)
  • 匹配
  • [^']{230,}
    使用
  • (?=”)
    正向前瞻,直接在右侧断言
见a。

谢谢第四只鸟

所以我需要的是:

‘[^’]{230,}
搜索开头撇号“后跟除结尾撇号[^']以外的任何字符(230个字符或以上){230,}

奇怪的是,如果你用InDesign的代码来表示左撇号和右撇号,它就不起作用了

谢谢第四只鸟

所以我需要的是:

‘[^’]{230,}
搜索开头撇号“后跟除结尾撇号[^']以外的任何字符(230个字符或以上){230,}


奇怪的是,如果你用InDesign的代码来表示左撇号和右撇号,它就不起作用了

@Wiktor Stribiżew是否更清晰?请像这样尝试
~[^~]{1230}
或使用
grep-oP
和一个前瞻
~[^~]{1230}(?=~)
@第四鸟谢谢,但似乎不起作用。我开始认为,如果您想要230个或更多字符
'[^']{230,}(?=')
@Thefourthbird Brilliant,那么不可能使用GREP来查找一个由230个字符组成的序列,该序列前面有一个开头撇号,但不包括一个结尾撇号!谢谢@Wiktor Stribiżew是否更清晰?像这样尝试
~[^~]{1230}
或使用
grep-oP
和前瞻
~[^~]{1230}(?=~)
@谢谢,但似乎不起作用。我开始认为,如果您想要230个或更多字符
'[^']{230,}(?=')
@Thefourthbird Brilliant,那么不可能使用GREP来查找一个由230个字符组成的序列,该序列前面有一个开头撇号,但不包括一个结尾撇号!谢谢刚意识到如果引用中有所有格撇号,这是行不通的。i、 e.“查尔斯贵宾犬”将被视为“查尔斯”之后过早结束的引语。我想你不能说,除非有逗号/句号/感叹号/问号,后跟撇号?我试过:“[^.”|,“|?”|!“]{230,}刚意识到,如果引号中有所有格撇号,这是行不通的。i、 e.“查尔斯贵宾犬”将被视为“查尔斯”之后过早结束的引语。我想你不能说,除非有逗号/句号/感叹号/问号,后跟撇号?我试过:“[^.”|,“|?”|!“]{230,}