如何在R语言中提取文件路径最后一个/后的字符串
提取文件路径中最后一个斜杠后的字符串(R语言实现)
下面提供几种简单高效的实现方式:
方法1:使用base R内置的basename()函数
这是最便捷的方案,basename()专门用于提取文件路径里的文件名部分,正好对应最后一个斜杠之后的内容:
ids <- c("/Users/st/Desktop/FY2022/G1_Conc fono (MDD)_Form_Number_1.csv", "/Users/st/Desktop/FY2022/G1_Conc fono (ADD)_Form_Number_3.csv") # 提取目标字符串 result <- basename(ids) result
运行输出:
[1] "G1_Conc fono (MDD)_Form_Number_1.csv" "G1_Conc fono (ADD)_Form_Number_3.csv"
方法2:用正则表达式配合sub()函数
通过正则匹配最后一个斜杠前的所有内容并替换为空,手动实现提取:
result <- sub(".*/", "", ids) result
正则表达式.*\/的含义是:匹配任意字符(.)零次或多次(*),直到遇到最后一个/,替换为空字符串后就得到目标部分。
方法3:使用fs包的path_file()函数
如果习惯用专业文件处理工具包,fs包的path_file()也能实现相同效果:
# 首次使用需安装包 install.packages("fs") library(fs) result <- path_file(ids) result
内容的提问来源于stack exchange,提问作者amisos55
相关产品推荐
相关产品推荐

