如何选择一系列行,直到到达包含特定单词的行?

Tri*_*ity 1 notepad++ regex

如何选择一系列行,直到到达包含特定单词的行?

例如,从第 1 行开始并选择每一行,直到找到包含以下单词的行:

你好,世界

all*_*tic 5

欢迎来到麦克软件!(解决方案)

  1. 点击Ctrl+F打开查找窗口。

  2. 单击“正则表达式”椭圆。

  3. 勾选“. 匹配换行符”复选框。

  4. 在“查找内容:”框中,输入(?:(?!batch).)+替换batch为您想要停止的任何单词。

  5. 在文档中要开始选择的行处单击。

  6. 单击“查找”窗口中的“查找下一个”按钮。


解释

我们使用正则表达式引擎的负向后视和原子分组功能,以及 Notepad++ 的开始搜索光标在文档中的位置的功能,来实现您想要的行为。

  • Notepad++ 会自动突出显示匹配结果。

  • 我们希望匹配的单词batch(在我的例子)。

  • 我们确实希望匹配从光标开始包含单词“batch”的所有内容。

  • 有关原子分组的详细信息,请参见此处

  • 有关负向后视(以及其他环视运算符,可能在 Notepad++ 的正则表达式风格中不可用)的详细信息,请参见此处