txt文件删除网址以“/”来获取文件

时间:2017-08-08 21:23:34

标签: regex linux windows bash notepad++

我有txt文件,每行每个网址包含一个网址:

://url/files.php?file=parent/children/file.pdf
://url/files.php?file=parent/children2/childrenofchildren2/file2.txt
......etc

我需要帮助才能在连续/之前切断每个方面。这就是我在notepad ++ regex模式中使用的(它不起作用):

^.+[/](.*)$

获得:

file.pdf
file2.txt

但我对所有解决方法持开放态度。

2 个答案:

答案 0 :(得分:1)

从左侧替换您的行,包括/,无论如何:

sed 's/.*\///' file

sed 's|.*/||' file

输出:

file.pdf
file2.txt

答案 1 :(得分:0)

这个解决方案可能比它需要的更复杂,但它有效!

纯粹基于正则表达式的方法可能如下: (([^\/])*)((\n)|($))/g

基本上,它匹配任意数量的非换行符和非\个字符(([^\/])*),然后在遇到新行\n或序列结尾{{1}时停止}}。还设置了全局$,以允许它匹配多个实例!

我希望这有帮助!