我想要删除向量中每个元素第二个连字符后的所有字符。
Initial string
aa-bbb-cccc => aa-bbb
aa-vvv-vv => aa-vvv
aa-ddd => aa-ddd
需要帮忙吗?
sub("^([^-]*-[^-]*).*", "\\1", x)
^
- 字符串的开始([^-]*-[^-]*)
- 第1组捕获除-
外的0个或多个字符,-
和除-
外的0个或多个字符.*
- 任何0个或多个字符(在TRE正则表达式中,点也匹配换行符)\\1
(\1
)是对第1组捕获文本的反向引用。x <- c("aa-bbb-cccc", "aa-vvv-vv", "aa-ddd")
sub("^([^-]*-[^-]*).*", "\\1", x)
## => [1] "aa-bbb" "aa-vvv" "aa-ddd"