在正規表示式中選擇段落的最後 5 個單字

在正規表示式中選擇段落的最後 5 個單字

我想匹配文件中每個段落的最後 5 個單字。我正在使用 Notepad++ 以及 Adob​​e InDesign GREP

樣本數據

在這裡您可以找到練習閱讀技巧的活動。閱讀將幫助您提高對語言的理解並擴大詞彙量。

本部分的自學課程是根據歐洲語言共同參考框架(CEFR)按英語程度編寫和組織的。有不同類型的文本和互動練習,可以練習您在學習中取得好成績、在工作中取得成功以及在空閒時間用英語進行交流所需的閱讀技巧。

參加我們的免費線上英語測試,以了解選擇哪個級別。選擇您的級別,從 A1 英語水平(初級)到 C1 英語水平(高級),並在您方便的時候以您自己的速度提高您的閱讀技能。

我寫的程式碼僅選擇最後一個單字。即使我將 5 更改為 3,它仍然只選擇最後一個單字。

(\H*){5}(?=$)

答案1

首先,讓我們解釋一下你的正規表示式:

  • (\H*){5}匹配 5 次 0 個或多個非水平空格,則它匹配至少 0 個或 5 個或更多字元長的單字。
  • (?=$)沒有意義,你想用$就夠了。

您應該使用的正規表示式是:(?:\h\H+){5}$

  • (?:\h\H+){5}# 1 個水平空格後面接著 1 個或多個非水平空格,必須出現 5 次
  • $ # 行結束

如果您不想匹配第一個單字之前的空格,請使用:

(?:\H+\h){4}\H+$

相關內容