我怎样才能删除文本文件中除一个单词之外的所有单词?

我怎样才能删除文本文件中除一个单词之外的所有单词?

我有一个文件,里面有很多关于街道和 WIFI 的信息。所以我想删除文本文件中的每个单词,除了密码:********,并且有很多单词,密码后的单词是可变/随机的,与我想保留/复制的单词占一行

1499904000,::13148748,密码:20022003,:1481477952,:Saad Al Ssaoudy,:7942242}]}

答案1

步骤1-

查找 -.*?(?=password:)(password.*?)(?=(,|\s))
替换为 -\r\n\r\n$1\r\n\r\n

解释一下 - find 的这一部分 .*?(?=password:)匹配到可以向前查找的点,即光标右侧的立即查找,并看到单词 password: 位于光标右侧。然后您有 find 的这一部分,(password.*?)它匹配并捕获单词 password 直到接下来提到的位置。然后您有 find 的这一部分,(?=(,|\s))它表示向前查找,即光标右侧的立即查找逗号或某些空白,例如空格或行尾。因此,当您查看 (password.*?) 时,.*? 它的这一部分将一直到该点。

假设你有 在此处输入图片描述

请注意,我在执行该正则表达式时勾选了点匹配换行符,如 imgur 上的图片所示。请注意,上图中有 4 个密码。

运行查找/替换,产生以下内容(下图)

在此处输入图片描述

第2步

然后只需要删除空行,在 notepad++ 中可以执行编辑..行操作..删除空行

任何支持正则表达式的文本编辑器都可以,例如 Notepad++

注意 - 早期版本有一个更简单的正则表达式,它不能合理地处理多次出现的字符串(例如,它只会显示最后一个)。此解决方案提供了字符串出现的所有时间。

答案2

我认为没有任何程序(我遇到过的)是专门针对您的问题而设计的。

我能建议的最好的事情是使用 Python 3 之类的语言编写脚本。

如果您不熟悉编程,最好的办法是前往 stackoverflow 提出您的问题。

如果这不是一个合适的替代方案,我很抱歉。

相关内容