Next time please provide your question with some handy reproducible code.
Following is the code of how I would try solving this problem.
x <- c("Shelbourne Road, Dublin, Ireland",
"1 Hatch Street Upper, Dublin, Ireland",
"98 Haddington Road, Dublin, Ireland",
"11 Mount Argus Close, Harold's Cross, Dublin 6W, Co. Dublin, Ireland",
"Winterstraße 17, 69190 Walldorf, Germany")
# split on ,
splitx <- strsplit(x, ",")
# for every list element (lapply climbs the list element-wise)
# subset last 3 elements
last3 <- lapply(splitx, tail, n = 3)
# merge them together by row
do.call("rbind", last3)
[,1] [,2] [,3]
[1,] "Shelbourne Road" " Dublin" " Ireland"
[2,] "1 Hatch Street Upper" " Dublin" " Ireland"
[3,] "98 Haddington Road" " Dublin" " Ireland"
[4,] " Dublin 6W" " Co. Dublin" " Ireland"
[5,] "Winterstraße 17" " 69190 Walldorf" " Germany"