6

RでURLからファイル名を抽出したいのですが、今のところ次のようにしていますが、Pythonのように短くできるかもしれません。パスが単なる文字列であると仮定します。

path="http://www.exanple.com/foo/bar/fooXbar.xls"

Rで:

tail(strsplit(path,"[/]")[[1]],1)

Python で:

path.split("/")[-1:]

多分いくつかのサブ、gsubソリューション?

4

2 に答える 2

22

そのための機能があります...

basename(path)
[1] "fooXbar.xls"
于 2013-09-13T14:16:48.523 に答える
1

@ SimonO101には、IMOで最も堅牢な回答がありますが、他にもいくつかのオプションがあります。

正規表現は貪欲なので、それを有利に利用できます

sub('.*/', '', path)
# [1] "fooXbar.xls"

[]また、 の周りに/は必要ありませんstrsplit

> tail(strsplit(path,"/")[[1]],1)
[1] "fooXbar.xls"
于 2013-09-13T14:16:17.963 に答える