v <- c("Mazda RX4","Mazda RX4 Wag","Datsun 710","Hornet 4 Drive","Hornet Sportabout","Valiant") gsub("^(?:Hornet|Valiant)\\s*(*SKIP)(*F)|(.+)", "*\\1*", v, perl=TRUE)
Standard input is empty
[1] "*Mazda RX4*" "*Mazda RX4 Wag*" "*Datsun 710*" [4] "Hornet *4 Drive*" "Hornet *Sportabout*" "Valiant"