我有以下向量c:
ABC-XXX
DEF-4-YYY
我想提取最后一次出现的“-”之前的所有内容,这意味着我将保留此内容
ABC
DEF-4
我尝试了以下方法:
sub([-].*, '', "DEF-4-YYY")
但这会替换第一个“-”之后的所有内容,而应该寻找最后一个“-”。上面命令的输出是:
"DEF"
这是怎么了
最佳答案
我们可以通过匹配sub
,然后匹配零个或多个不是-
的字符,直到字符串的末尾(-
),然后将其替换为空白($
)来处理''
sub('-[^-]*$', '', v1)
#[1] "ABC" "DEF-4"
数据
v1 <- c('ABC-XXX', 'DEF-4-YYY')
关于r - R sub提取字符最后一次出现之前的所有内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48384286/