我们可以在记事本中使用另一个正则表达式来查找和替换正则表达式吗?

Can we find and replace a regular expression by using another regular expression in notepad?

我在这里尝试用其他文本替换一些文本。 示例:-

almada-institute.com:25:info@almada-institute.com:info12345:"hello"<service@iubi.com>:nossl in-graph.com:25:info@in-graph.com:info123456789:"hello"<service@iubi.com>:nossl get-herbals.net:25:info@get-herbals.net:info321:"hello"<service@iubi.com>:nossl

我需要这样

almada-institute.com:25:info@almada-institute.com:info12345:"hello"<info@almada-institute.com>:nossl in-graph.com:25:info@in-graph.com:info123456789:"hello"<info@in-graph.com>:nossl get-herbals.net:25:info@get-herbals.net:info321:"hello"<info@get-herbals.net>:nossl

为此,我正在使用:-

但它只是将替换字段中的搜索内容替换为正则表达式。

使用捕获组。将另一个正则表达式放入其中没有任何意义。因此,根据您提供的屏幕截图,正则表达式类似于:

([a-z]\w+[@][a-z]\w+)[.]([a-z]\w+)

替换为:

-.

您可以使用 () 创建正则表达式组,然后使用 $N 进行引用,这将访问 N-th 组。

所以在你的情况下,你可以这样做 正则表达式:([^: ]+:[^:]+:([^:]+):[^:]+:[^:]+)(:[^: ]+) 替换:<> 或某些实现 <>

您可以在这里自己尝试:https://www.regex101.com/r/hY8pY9/1

您可以使用正则表达式组。根据上面的示例 input/output,下面的示例对我有用。

查找内容:

:(\w+@.*?):(.*?)<(\w+@.*?)>:

替换为:

::<>: