从 Excel 粘贴数据后,如何在 Notepad++ 中删除空行?

从 Excel 粘贴数据后,如何在 Notepad++ 中删除空行?

我想清理从 Excel 电子表格中复制的一些数据,并使用 Notepad++ 清除所有格式。我想利用 Notepad++ 的行号功能来计算行数。即:Excel 中包含实际数据的行数。

从 Excel 导出数据的原因

电子表格的每一行都有自己的行号。它由 Excel 左边距中的数字表示。所以我可以查看并弄清楚。

也就是说,如果它看起来像这样:

  A    B
1 #### something
2 #### something
3 #### something
4 #### something
5 #### something
6 #### something

但如果它看起来像这样......

  A    B
1 #### something
2 #### something
3 
4 #### something
5 
6 #### something

... 列表很长,那么很难说出这个列表中有多少行。我必须逐行查看列表并目测行数。我的意思是,我知道 Word 有选项可以告诉您文档中有多少行或单词。但我不确定 Excel 中是否有这样的功能。

我不知道您是否可以在 Excel 中对此采取任何措施,即告诉它删除没有任何数据的单元格行并将单元格行彼此相邻移动(顶部/底部)。如果您知道方法,请分享。但我认为 Notepad++ 是处理此类文本数据的绝佳工具。

我在 Notepad++ 中遇到的问题

我本质上想删除多余的换行符。它可能看起来像这样。

Line 01:something
Line 02:something
Line 03:something
Line 05:
Line 06:
Line 07:something
Line 08:something
Line 09:
Line 10:
Line 11:
Line 12:
Line 13:something

我想删除第 5、6、9、10、11 和 12 行。

我尝试过

  • TextFX 编辑:我尝试了“编辑”菜单中的“删除空白行”选项。没有用。*1
  • 替换:我尝试输入\n\r在查找中,替换字段中没有任何内容。“发现 0 个出现项”*2
  • 替换:我尝试输入\r\n在 find 中,而在 replace 字段中没有任何内容。“402 个发生项被替换”但它将所有内容放在一行上。像这样:something something something something
  • 编辑菜单:我尝试从编辑菜单中删除空行。*3
  • 编辑菜单:我尝试从编辑菜单中加入线路。

那么还有什么?...我还能尝试什么?

这就是我想要的结果:

Line 01:something
Line 02:something
Line 03:something
Line 07:something
Line 08:something
Line 13:something

我怎样才能实现这个目标?

更新

****1、2、3** = 这三种方法应该有效。我已经测试并验证了每种方法。其他两种方法无效,也不应该有效。它们的用途不同。*

好的,我想我现在知道为什么这不起作用了。我正在处理的文本是从 Excel 2010 复制并粘贴到 Notepad++ 中的,其中有一些多余的字符会干扰这些命令。有一些制表符和 CF 或 LF 字符。

以下是我所拥有内容的更详细描述。

Line 01:####[tab]something[CR][LF]
Line 02:####[tab]something[CR][LF]
Line 03:####[tab]something[CR][LF]
Line 05:[tab][CR][LF]
Line 06:[tab][CR][LF]
Line 07:####[tab]something[CR][LF]
Line 08:####[tab]something[CR][LF]
Line 09:[tab][CR][LF]
Line 10:[tab][CR][LF]
Line 11:[tab][CR][LF]
Line 12:[tab][CR][LF]
Line 13:####[tab]something

在哪里...

  • = 4 位数字
  • [tab] = 制表符
  • [CR] = 回车
  • [LF] = 换行

那么您如何处理这个问题?

答案1

更新后的另一个回应...

如果文本是这种格式,您应该能够使用以下命令进行查找和替换:

首先将Notepad++中的搜索模式设置为“扩展”。

将“查找内容”设置为“\t\r\n”,并将“替换为”留空。

这应该搜索并替换如上文中的 TAB CR LF 模式。

答案2

您可以使用Regular Expression的模式Search->Replace来执行此操作:

\s*\R您的空行可以用新行后面的正则表达式来描述\R,因此您可以使用以下替换:

Find what : "(\R)(\s*\R)+"
Replace with : "\1"

\R是通用换行符,它相当于\r\n(Windows)、\n(Unix) 或\r(Mac),具体取决于当前的换行符格式。

\s是任意空格字符,它相当于[[:space:]][ \t\n\r\f\v]

答案3

在 Excel(我使用的是 2010)中,您可以选择并删除空白行:


选择数据范围

起始数据


在“主页”选项卡下,转到“查找和选择”,然后选择“转到特殊

前往特别


在选项窗口中选择空白。这将选择数据范围内的所有空白单元格。右键单击空白单元格并选择删除,然后选择向上移动单元格

选定空白


完毕

答案4

对于 Notepad++ 来说,迄今为止处理这种情况的最简单方法是使用内置函数:

编辑 > 行操作 > 删除空行(包含空白字符)

@Sammy 说他尝试了紧接着上面的选项(“删除空行”),但您需要选择包含空白字符(例如 Tab 和 Space)的行。

我喜欢 Notepad++ 的查找/替换功能,但这个内置功能更简单。

相关内容