I have the following data:
temp<-c("AIR BAGS:FRONTAL" ,"SERVICE BRAKES HYDRAULIC:ANTILOCK",
"PARKING BRAKE:CONVENTIONAL",
"SEATS:FRONT ASSEMBLY:POWER ADJUST",
"POWER TRAIN:AUTOMATIC TRANSMISSION",
"SUSPENSION",
"ENGINE AND ENGINE COOLING:ENGINE",
"SERVICE BRAKES HYDRAULIC:ANTILOCK",
"SUSPENSION:FRONT",
"ENGINE AND ENGINE COOLING:ENGINE",
"VISIBILITY:WINDSHIELD WIPER/WASHER:LINKAGES")
I would like to create a new vector that retains only the text before the first ":" in the cases where a ":" is present, and the whole word when ":" is not present.
I have tried to use:
temp=data.frame(matrix(unlist(str_split(temp,pattern=":",n=2)),
+ ncol=2, byrow=TRUE))
but it does not work in the cases where there is no ":"
I know this question is very similar to: truncate string from a certain character in R, which used:
sub("^[^.]*", "", x)
But I am not very familiar with regular expressions and have struggled to reverse that example to retain only the beginning of the string.