删除所有与特定字符不同的字符(即保持选择)

时间:2019-01-07 01:56:34

标签: r regex string stringr

我想删除所有与特定字符集匹配的字符。

例如,我想删除所有与星号(*)不同的字符,即仅保留星号。

要删除它们,我使用以下内容:

s <- "sdf*ses**e"
stringr::str_remove_all(s, "\\*")

但是如何只保留星星呢?我已经尝试过各种方法(str_remove_all(s, "!\\*")str_remove_all(s, "-\\*")),但都没有成功。

2 个答案:

答案 0 :(得分:3)

您需要使用抑扬音来抵消星星

stringr::str_remove_all(s, "[^\\*]")

使用底数R的另一种可能性

gsub("[^*]","",s)

答案 1 :(得分:2)

stringr::str_remove_all(s, "[^\\*]")