Regex 删除不属于同一域的所有URL
我是bash的新手,所以请给我解释一下你的答案。我已经研究过其他类似的问题,但我仍然被卡住了。我有一个包含大约4k URL的文本文件。我想删除所有不属于域的URL 例如,我只需要来自域Regex 删除不属于同一域的所有URL,regex,bash,sed,Regex,Bash,Sed,我是bash的新手,所以请给我解释一下你的答案。我已经研究过其他类似的问题,但我仍然被卡住了。我有一个包含大约4k URL的文本文件。我想删除所有不属于域的URL 例如,我只需要来自域http://www.example.com。文本文件中还有类似于mail.example.com的URL,我对此不感兴趣。如果我被要求编写一个感兴趣的URL正则表达式,它将是^http://www.example.com/* 我尝试了grep-no'^http:\/\/www.example.com\*'list
http://www.example.com
。文本文件中还有类似于mail.example.com
的URL,我对此不感兴趣。如果我被要求编写一个感兴趣的URL正则表达式,它将是^http://www.example.com/*
我尝试了grep-no'^http:\/\/www.example.com\*'listofURLs.txt
,但这返回了包含http://www.example.com
现在我可以使用sed
删除所有其他行,但这不是一个简单的解决方案。我想知道有没有更简单的方法
提前感谢。这应该可以:
grep '^http://www\.example\.com' listofURLs.txt > listofExampleURLs.txt
无需使用
-o
,仅当需要获取与regexp匹配的行的一部分时才需要使用-o显示listofURLs.txt
的摘录为什么要使用-n
选项?你需要行号吗?我不能给你文件的确切内容。该文件由URL组成,如http://mail.example.com, https://www.facebook.com/exapmle, https://www.youtube.com/exaple, http://www.example.com/foo-bar/
等等@Barmar,就像我说的,我想我会使用sed
删除所有其他行号。这就是我使用-n
选项的原因。它们是每行一个URL,还是同一行多个URL?