2019-03-08
閱讀量:
1524
gsub / sub在某些字符之間提取
如何從R中的以下字符串中提取數(shù)字/ ID?
link <- "D:/temp/sample_data/0000098618-13-000011.htm"
我想提取 0000098618-13-000011
那是丟棄.htm和D:/temp/sample_data/。
我沒有太多運氣試過grep和gsub。
解決辦法:使用basename后跟sub:
sub("\\..*", "", basename(link))
## [1] "0000098618-13-000011"
要么
library(tools)
file_path_sans_ext(link)
## [1] "0000098618-13-000011"
或者以更復雜的模式為代價,我們可以在一個單獨的模式中完成sub:
sub(".*/(.*)\\..*", "\\1", link)
## [1] "0000098618-13-000011"
或單個gsub:
gsub(".*/|\\.[^.]*$", "", link)
## [1] "0000098618-13-000011"
或者strsplit:
sapply(strsplit(link, "[/.]"), function(x) tail(x, 2)[1])
## [1] "0000098618-13-000011"






評論(0)


暫無數(shù)據(jù)
推薦帖子
0條評論
0條評論
0條評論