簡體   English   中英

正則表達式選擇超過 4 個字符的單詞,但如果重復則只選擇一個實例

[英]Regex select words longer than 4 characters but only one instance if duplicates

我正在嘗試使用 GREP 樣式在 InDesign 中格式化文本。 目標是在段落中選擇超過 4 個字母的單詞,但如果該單詞在段落中重復,則不應選擇比該單詞的第一個實例更多的單詞。 這是示例文本:

“主右手高舉,主右手作大事!” 解決方案應該給出

  • 主右手舉起高大偉業

我已經完成了第一部分

[[:word:]]{4,}

但不知道如何處理這些重復項。

訂單有要求嗎? 如果不是,那么超過 4 個字符的單詞后面沒有跟同一個單詞怎么辦? 看:

([[:word:]]{4,})(?!.*\1)

https://regex101.com/r/Ug4dLZ/1

結果:舉起高主右手做了很多事

為了更全面,包括斷詞(即,將“Person”和“Personhood”計為 2 個單獨的詞):

([[:word:]]{4,})(?!.*\b\1\b)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM