如何在 Notepad++ 中删除没有“。”的行?

如何在 Notepad++ 中删除没有“。”的行?

在 Notepad++ 中,我有许多行格式如下:

abc.xyz

其中“abc”可能有空格或 - 或数字。

如何删除没有“。”的行?因此,如果某一行没有任何“。”,我希望将其完全删除,甚至不留下空行。

答案1

如何删除没有的行.

  • 菜单“搜索”>“替换”(或Ctrl+ H

  • 将“查找内容”设置为^[^\.]*\r\n

    • 您可以\r\n根据文件中的 EOL(行尾)使用不同的 EOL 正则表达式进行替换(请参阅下面的“我的文件中有不同的 EOL,我该怎么办?”和“我不关心我的文件使用什么 EOL,我该怎么办?”)。
  • 清除“替换为”

  • 启用“正则表达式”

  • 点击“全部替换”

    图像

笔记:

  • 以上假设文件中的最后一行有一个尾随的 EOL。

  • 以上内容还假设您正在使用 Windows EOL 编辑文本文件\r\n

abc.xyz
abcdef
abc 123.xyz
abc 123def

abc.xyz
abc 123.xyz

我的文件中有不同的 EOL,我该怎么办?

  • Windows EOL 是\r\n

  • 如果您使用具有不同 EOL 的文件,您可以使用菜单“编辑”>“EOL 转换”将它们转换为 Windows EOL。

  • 如果您没有使用 Windows EOL,并且不想转换它们,请改用以下命令:

    • 对于 Unix/OS X EOL,请使用\n代替\r\n

    • \r对于\r\nMac OS(最高版本 9)EOL,请使用


我不知道或不关心我的文件使用什么 EOL,我该怎么办?

  • 您可以使用\R(?:\r\n?|\n)(?:\r?\n?)代替\r\n。这可以解决文件中实际使用的 EOL 的任何问题。

  • 您也可以使用(?:\r?\n?|$)。如果文件最后一行没有 EOL,则此表达式将起作用。


进一步阅读

答案2

接受的答案是正确的,但你并不总是有正则表达式。所以我提出了一个更简单的解决方案。

  1. Ctrl+ F– 点击标记标签
  2. 将“查找内容”设置为.
  3. 勾选“书签行”选项(由 Wrass 提供)
  4. 搜索模式 = 正常
  5. 单击“标记全部”-> 您应该会看到书签行号旁边有一个蓝色圆圈。
  6. 然后导航到菜单搜索->书签->删除未标记的行。

相关内容