Вы можете использовать регулярное выражение PCRE с отрицательным прогнозом:
\bSE Kellogg\b(?!\s+Court\b)
См. Демонстрационное выражение .
Детали
\\b
- граница слова
SE Kellogg
- буквальная подстрока
\\b
- граница слова
(?!\\s+Court\\b)
- отрицательный взгляд, который не соответствует совпадению, если непосредственно справа от текущего местоположения
\\s+
- один или несколько пробельных символов
Court\\b
- целое слово Court
.
R демо :
> gsub("\\bSE Kellogg\\b(?!\\s+Court\\b)", "SE Kellogg Court", address, perl=TRUE)
[1] "SE Kellogg Court" "SE Kellogg Court"
Обратите внимание, что вы можете сократить замену, если вы используете группу захвата ((...)
) вокруг поисковой фразы и обратную ссылку \1
в шаблоне замены:
gsub("\\b(SE Kellogg)\\b(?!\\s+Court\\b)", "\\1 Court", address, perl=TRUE)
^ ^ ^^^