2017-08-08 89 views
0

我已经txt文件contaning每行一个网址每个URL为:txt文件删除URL到最后一个“/”来获得文件

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

我需要帮助一排前的最后/削减everythink。这就是我在记事本++正则表达式模式中使用(它不工作):

^.+[/](.*)$ 

要获取:

file.pdf 
file2.txt 

但我向所有人开放waysof解决。

+1

用四个空格前缀代码/数据。请看[编辑帮助](http://stackoverflow.com/editing-help)。 – Cyrus

+0

在NPP中,您可以使用'^。* /'替换为'/'(如果您需要保留最后一个'/')。 –

+0

没有'^。* /'忽略行尾我试过这个之前它会选择除最后一行结尾之外的所有内容。 – Aroly7

回答

1

左包括什么/替换您行:

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

sed 's|.*/||' file 

输出:

 
file.pdf 
file2.txt 
+0

感谢赛勒斯,我的Windows部分思想压倒了我的Linux部分,所以我不这么想。非常感谢 – Aroly7

+0

,或者使用'/'作为字段分隔符,并使用'awk'输出最后一列:'awk -F /'{print $ NF}'file' – Cyrus

0

这种解决方案可能会更复杂得多,它需要的,但它的作品!

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

基本上,它任意数量的非新行和非\字符(([^\/])*)匹配,然后停止时,它要么遇到一个新行\n或端的序列$。全球/g也被设置,以允许它匹配多个实例!

我希望这有助于!