library(stringr)
x <- c("GO:0016559~peroxisome fission,","GO:0006122~mitochondrial electron transport, ubiquinol to cytochrome c,","GO:0006122~mitochondrial electron transport, ubiquinol to cytochrome c,GO:0006334~nucleosome assembly,")
unlist(str_extract_all(x, "(?<=~).*?(?=,(?:GO:\\d+~|$))"))