如何查找特定的数字长度,并使用 Notepad++ 删除/过滤其余部分?

Posted

技术标签:

【中文标题】如何查找特定的数字长度,并使用 Notepad++ 删除/过滤其余部分?【英文标题】:How to Find specific digit length, and delte / filter out the rest with Noted++? 【发布时间】:2021-12-31 23:55:13 【问题描述】:

我在网上搜索过是否有人已经要求提供这种可能的解决方案。我能找到的最接近的是这个。在find下,替换tab,FindWhat:^(\d+).*$ 替换为:$1

我将处理超过 10 列的文档。我需要将 PDF 文件中的文本复制并粘贴到纯文本文档中,然后过滤掉除第 9 列中的 11 位代码之外的所有内容。

我相信我在上面发布的解决方案将包含其他列中的数字。我假设有一种方法可以将我发布的解决方案限制为仅适用于 11 位数值,而不适用于文本文件中的任何数字。

下面是我的例子。

第 1 列 11 第 2 列 1 第 3 列 1 第 4 列 1 第 5 列 单位 第 6 列 123456 第 7 列 123456 第 8 列 前面 第 9 列 12345678911

我希望能够使用记事本加上删除除第 9 列中存在的任何 11 位代码之外的所有内容。

【问题讨论】:

“第九列”是什么意思?什么是文件中的“列”以及如何分隔列?请edit问题提供一个示例,其中包含从您的输入文件复制的三行或四行文本。如果您需要隐藏名称等,您可以用“X”或其他内容替换字符,但保留实际布局。显示这些示例行的所需输出。 【参考方案1】:

编辑:请注意 - 这只是 9 列的解决方案!正如其他人所提到的,请添加有关文本文件格式的更多详细信息。


假设您有以下列:

Column 1 Column 2 Column 3 Column 4 Column 5 Column 6 Column 7 Column 8 Column 9 
11       1        1        1        Unit-x   123456   123456   front    12345678911
12       3        4        5        Unit-y   123456   123456   front    12345678911

或类似的东西

Column 1;Column 2;Column 3;Column 4;Column 5;Column 6;Column 7;Column 8;Column 9
11;1;1;1;Unit-x;123456;123456;front;12345678911
12;3;4;5;Unit-y;123456;123456;front;12345678911

或在文本文件中逐行添加更多内容,您将执行以下步骤:

打开您的文件 Ctrl+H 查找内容:(.+)([0-9]11$) 替换为:\2 搜索模式:正则表达式 点击全部替换 根据需要清理标题。

【讨论】:

以上是关于如何查找特定的数字长度,并使用 Notepad++ 删除/过滤其余部分?的主要内容,如果未能解决你的问题,请参考以下文章

Linux如何查找特定字符文件或目录

如何在 Notepad++ 正则表达式查找/替换中保留括号

在字符串中查找数字并返回位置和长度

如何在 C# 数组中查找和显示特定值

notepad++如何替换两个字符之间的内容?内容跨行

notepad++正则表达式使数字自动增加