Я рекомендую библиотеку stringi
. Пример:
library(stringi)
strings = c("Increase for 4 Google", "There is a slight decrease for 5Amazon", "I will need 4sec more")
patterns = c("4 Google", "5Amazon", "4sec")
replacements = c("stock", "stock", "time")
strings = stri_replace_all_fixed(strings,patterns,replacements)
Однако вы, вероятно, захотите обрабатывать много акций и много раз, поэтому вам может быть лучше сделать что-то вроде этого:
stocks = c("4 Google", "5Amazon")
strings = stri_replace_all_fixed(strings,stocks,'stock')
strings = stri_replace_all_regex(strings,'\b[0-9]+sec\b',time)
\b[0-9]+sec\b
является обычным значение выражения:
- граница слова
- один или несколько цифровых символов
- "se c"
- граница слова
Это будет включать строки, такие как «2se c», но исключить такие, как «1sector»