删除R中字符串末尾的连字符
Remove hyphen at the end of string in R
我在 R 中有一列数据框,如下所示:
names <- data.frame(name=c("ABC", "ABC-D", "ABCD-"))
我想删除字符串末尾的连字符,同时保留字符串中间的连字符。我尝试了一些表达方式,例如:
names$name <- gsub("+-\w", "", names$name)
# the desired output is "ABC", "ABC-D", and "ABCD", respectively
虽然有几种组合完全删除了连字符,但我不确定如何同时指定字符串边界和连字符。
谢谢!
尝试:
gsub("\-$", "", names$name)
# [1] "ABC" "ABC-D" "ABCD"
$
告诉 R
(转义的)连字符在单词
的末尾
不过,由于 -
位于 regex
的第一位,因此您无需转义它,因此这也适用:
gsub("-$", "", names$name)
#[1] "ABC" "ABC-D" "ABCD"
我在 R 中有一列数据框,如下所示:
names <- data.frame(name=c("ABC", "ABC-D", "ABCD-"))
我想删除字符串末尾的连字符,同时保留字符串中间的连字符。我尝试了一些表达方式,例如:
names$name <- gsub("+-\w", "", names$name)
# the desired output is "ABC", "ABC-D", and "ABCD", respectively
虽然有几种组合完全删除了连字符,但我不确定如何同时指定字符串边界和连字符。
谢谢!
尝试:
gsub("\-$", "", names$name)
# [1] "ABC" "ABC-D" "ABCD"
$
告诉 R
(转义的)连字符在单词
不过,由于 -
位于 regex
的第一位,因此您无需转义它,因此这也适用:
gsub("-$", "", names$name)
#[1] "ABC" "ABC-D" "ABCD"