Это неправильный способ использования mgsub
. Предполагается, что элементы в аргументе pattern
будут разными (это то, во что я могу поверить из документации. Во всяком случае, вы можете делать повторные вызовы функции sub
:
text = "Poem number one, Poem number two, Poem number three"
pattern = c("Poem", "Poem", "Poem")
replacement = c("First", "Second", "Third")
new_text = text
for (i in 1:length(pattern))
new_text = sub(pattern[i], replacement[i], new_text)
> new_text
[1] "First number one, Second number two, Third number three"
gsub
не будет работать, поскольку он заменяет все экземпляры pattern
в первом вызове.