这将是愚蠢的.
我有一个字符串:
word <- "dirtyboards.csv"
Run Code Online (Sandbox Code Playgroud)
我想删除csv部分并获得"脏板".
我在尝试:
require(stringr)
str_extract(word, ".*[^.csv]")
Run Code Online (Sandbox Code Playgroud)
我得到了回报:"脏板".".csv"之前的"s"丢失了.
我知道我能做到
gsub(".csv", "", word)
尝试
library(stringr)
str_extract(word, '.*(?=\\.csv)')
#[1] "dirtyboards"
Run Code Online (Sandbox Code Playgroud)
提供示例的另一个选项(并非非常具体)
str_extract(word, '^[^.]+')
#[1] "dirtyboards"
Run Code Online (Sandbox Code Playgroud)
包括'foo.csv.csv',
word1 <- c("dirtyboards.csv" , "boardcsv.csv", "foo.csv.csv")
str_extract(word1, '.*(?=\\.csv$)')
#[1] "dirtyboards" "boardcsv" "foo.csv"
Run Code Online (Sandbox Code Playgroud)
基地R有一个ap:
word <- "dirtyboards.csv"
tools::file_path_sans_ext(word)
## [1] "dirtyboards"
Run Code Online (Sandbox Code Playgroud)