我尝试从
这样的网址中提取文件扩展名(如果存在)> http://www.example.com/index.php?option=com&etc
> http://www.example.com/subpage1/subpage2/file.pdf
使用basename(URL)
功能,我收到了该文件。但是当我申请sub()
时,我得到了这个
> sub(".*([.*])", "\\1", basename(URL))
> php?option=com&etc
> .pdf
如何仅检索扩展名(如果存在)?
我试过了file_ext(basename(URL))
。它适用于第二个例子(当没有参数时)但它没有为第一个例子提供任何内容。
file_ext(basename(URL))
[1] ""
是否有可能在“。”之间检索字符串的正则表达式。和“?”。
答案 0 :(得分:1)
删除?
后列出的所有参数,然后运行file_ext
:
tools::file_ext(sub("\\?.+", "", URL))
#[1] "php" "pdf"
URL
的位置:
URL <- c(
"http://www.example.com/index.php?option=com&etc",
"http://www.example.com/subpage1/subpage2/file.pdf"
)