我在 notepad++ 中有一些这样的文本。我想复制行中引号内的文本,该行的下一行包含“未找到链接”文本
links in 'abc' as of time-spec 'now':
No links found.
links in 'def' as of time-spec 'now':
No links found.
links in 'xsdsw' as of time-spec 'now':
dferg,regerg,grgerg
No of links found: 3
期望输出(中间):
links in 'abc' as of time-spec 'now':
No xlinks found.
links in 'def' as of time-spec 'now':
No xlinks found.
期望输出(最终):
abc
def
答案1
这可能不是一个完美的解决方案,但如果您没有其他办法的话,这可能会有所帮助。
打开文件后,使用正则表达式搜索模式。使用以下条件作为查找条件(根据需要进行调整):
links in '(.*)' as of time-spec 'now':\r\n No links found.
点击“查找当前文档中的所有内容”您将获得类似以下的结果:
在结果窗格中,您应该能够Alt按 + 单击并突出显示单引号内的文本。然后按Ctrl+C复制值,然后您可以将它们粘贴到新文档或您想要的任何位置。注意:如果引号内的文本长度不一,则必须选择超过所需内容以突出显示每一行,并手动修改粘贴的文本以获得干净的结果。
答案2
另一种方法是使用两个连续的正则表达式进行替换。打开文档后,按Ctrl+H即可获取替换对话框。
首先,对于“找什么“ 使用:
links in '(.*)' as of time-spec 'now':\r\n.*\r\n No of links found: \d*\r\n
离开 ”用。。。来代替“作为空文本框。单击“全部替换”,这应该可以有效删除您不想看到的行。
其次,保持“替换”对话框打开,然后输入以下表达式“找什么“
links in '(.*)' as of time-spec 'now':\r\n No links found.\r\n
为了 ”用。。。来代替”,则输入以下内容:\1
再次单击“全部替换”,它将只留下您想要保留的值。