text <- "In Spanish, Brasil is written as <Brasil>, for some reason." gsub("<[^<>]*>(*SKIP)(*F)|Brasil", "Brazil", text, perl=TRUE) gsub("(?<!<(?=\\w+>))Brasil", "Brazil", text, perl=TRUE)
Standard input is empty
[1] "In Spanish, Brazil is written as <Brasil>, for some reason." [1] "In Spanish, Brazil is written as <Brasil>, for some reason."