我目前正在学习正则表达式,我正在尝试使用 notepad++ 从文档中过滤所有链接(例如: http://www.link.com/folder/file.html )。实际上我想删除所有其他内容,以便最后只列出 http 链接。
到目前为止,我试过这个:http\:\/\/www\.[a-zA-Z0-9\.\/\-]+
这给了我找到的所有链接,但我如何删除剩余的东西,以便最终我有一个所有链接的整洁列表?
如果我尝试用\1 后面的任何内容替换它,显然链接将被删除,但我希望完全相反的所有其他内容都被删除。
所以它应该是这样的:
- 找到一串数字、字母和特殊符号,直到“http”
- 删除您发现的内容
- 并在“html”之后继续搜索更多数字、字母和特殊符号
- 并再次删除
有任何想法吗?非常感谢。
最佳答案
在 Notepad++ 中,在替换菜单 (CTRL+H) 中,您可以执行以下操作:
.*?(http\:\/\/www\.[a-zA-Z0-9\.\/\-]+)
$1\n
Regular expression
和 . matches newline
这将返回您所有链接的列表。不过有两个问题:
关于正则表达式过滤文档中的链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19717092/