Я предполагаю, что вы ищете способ гибко gsub
выражений. Вы можете взглянуть на функцию qdap::mgsub
, которая позволяет проверять векторизованные шаблоны, замены и символьный объект. Я могу привести глупый пример:
str <- "This string ‘has’ non “standard“ elements"
df = data.frame(str = rep(str,5))
qdap::mgsub(pattern = c("‘", "’", '“'),
replacement = c("'","'",'"'),
df$str)
[1] "This string 'has' non \"standard\" elements" "This string 'has' non \"standard\" elements"
[3] "This string 'has' non \"standard\" elements" "This string 'has' non \"standard\" elements"
[5] "This string 'has' non \"standard\" elements"
Кстати, если вы хотите, чтобы в вашей строке были большие кавычки ("
), R
будет пробел их. При использовании функции печати, например, cat
, вы увидите ожидаемый результат:
cat(qdap::mgsub(pattern = c("‘", "’", '“'),
+ replacement = c("'","'",'"'),
+ df$str), sep = "\n")
This string 'has' non "standard" elements
This string 'has' non "standard" elements
This string 'has' non "standard" elements
This string 'has' non "standard" elements
This string 'has' non "standard" elements