somenames <- c("Abdul", "Abdul-", "Abdul-Ahad", "Abduallah", "T.")
sort.by.length.desc <- function (v) v[order( -nchar(v)) ]
firstnames <- data.frame(word=sort.by.length.desc(somenames), stringsAsFactors = FALSE)
regex.escape <- function(string) {
gsub("([][{}()+*^${|\\\\?.])", "\\\\\\1", string)
}
firstnames$word2 <- paste0("(?!\\B\\w)",regex.escape(firstnames$word),"(?!\\B\\w)")
comment <- "Some text with Abdul Abdul- Abduallah Ta, My, and He in it"
for(i in 1:length(firstnames$word2)){
comment <- gsub(firstnames$word2[i], "Z", comment, perl=TRUE)
}
comment
c29tZW5hbWVzIDwtIGMoIkFiZHVsIiwgIkFiZHVsLSIsICJBYmR1bC1BaGFkIiwgIkFiZHVhbGxhaCIsICJULiIpCnNvcnQuYnkubGVuZ3RoLmRlc2MgPC0gZnVuY3Rpb24gKHYpIHZbb3JkZXIoIC1uY2hhcih2KSkgXQpmaXJzdG5hbWVzIDwtIGRhdGEuZnJhbWUod29yZD1zb3J0LmJ5Lmxlbmd0aC5kZXNjKHNvbWVuYW1lcyksIHN0cmluZ3NBc0ZhY3RvcnMgPSBGQUxTRSkKCnJlZ2V4LmVzY2FwZSA8LSBmdW5jdGlvbihzdHJpbmcpIHsKICAgIGdzdWIoIihbXVt7fSgpKypeJHt8XFxcXD8uXSkiLCAiXFxcXFxcMSIsIHN0cmluZykKfQpmaXJzdG5hbWVzJHdvcmQyIDwtIHBhc3RlMCgiKD8hXFxCXFx3KSIscmVnZXguZXNjYXBlKGZpcnN0bmFtZXMkd29yZCksIig/IVxcQlxcdykiKQoKY29tbWVudCA8LSAiU29tZSB0ZXh0IHdpdGggQWJkdWwgQWJkdWwtIEFiZHVhbGxhaCBUYSwgTXksIGFuZCBIZSBpbiBpdCIKCmZvcihpIGluIDE6bGVuZ3RoKGZpcnN0bmFtZXMkd29yZDIpKXsKICBjb21tZW50IDwtIGdzdWIoZmlyc3RuYW1lcyR3b3JkMltpXSwgIloiLCBjb21tZW50LCBwZXJsPVRSVUUpCn0KY29tbWVudAo=