我有几个下载链接(即字符串(,每个字符串都有不同的长度。
例如,假设这些假链接是我的字符串:
My_Link1 <- "http://esgf-data2.diasjp.net/pr/gn/v20190711/pr_day_MRI-AGCM3-2-H_highresSST_gn_20100101-20141231.nc"
My_Link2 <- "http://esgf-data2.diasjp.net/gn/v20190711/pr_-present_r1i1p1f1_gn_19500101-19591231.nc"
我的目标:
A(我只想让每个字符串的最后一部分以.nc结尾,并得到以下结果:
pr_day_MRI-AGCM3-2-H_highresSST_gn_20100101-20141231.nc
pr_-present_r1i1p1f1_gn_19500101-19591231.nc
B(我只想在.nc之前有每个字符串的最后一部分,并得到以下结果:
pr_day_MRI-AGCM3-2-H_highresSST_gn_20100101-20141231
pr_-present_r1i1p1f1_gn_19500101-19591231
我试图在网上找到一种方法,但我失败了。似乎这可以在 Python 中完成,如下所述:
如何在URL中获取最后一个斜杠之后的所有内容?
有谁知道 R 中的相同方法?
非常感谢您的时间。
获取字符串最后一部分的快捷方式是使用basename
basename(My_Link1)
#[1] "pr_day_MRI-AGCM3-2-H_highresSST_gn_20100101-20141231.nc"
对于第二个问题,如果您想删除最后一个".nc"
我们可以使用sub
例如
sub("\.nc", "", basename(My_Link1))
#[1] "pr_day_MRI-AGCM3-2-H_highresSST_gn_20100101-20141231"
使用一些正则表达式,这是获取第一部分的另一种方法:
sub(".*/", "", My_Link1)