Заменить любые символы внутри "()" другими символами в строке? - PullRequest
2 голосов
/ 08 апреля 2020

Извинения, если название сбивает с толку. Я хотел бы заменить любые символы в «()» другими символами.

Так что это текущий вывод

> "x(oldcharacters) y(oldcharacters) z(oldcharacters)"

И это желаемый вывод

> "x(newcharacters) y(newcharacters) z(newcharacters)"

Я предполагаю, что это работа gsub, но не совсем уверена в этом.

1 Ответ

1 голос
/ 08 апреля 2020

Мы можем использовать gsub, чтобы соответствовать ( (экранированный \\, поскольку это метасимвол для захвата в качестве группы), за которым следует один или несколько символов (+), которые не являются ), затем следует ) и заменить на ( и символы в замене

gsub("\\([^)]+\\)", "(newcharacters)", str1)
#[1] "x(newcharacters) y(newcharacters) z(newcharacters)"

data

str1 <- "x(oldcharacters) y(oldcharacters) z(oldcharacters)"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...