testo <- 'ricomprate uno comprato comprata due comprate ricomprate tre ricomprato comprati'
gsub('(?<!\\S)((?:ri)?comprat)[aeio](?!\\S)', '\\1+', testo, perl=TRUE)
gsub('\\b((?:ri)?comprat)[aeio]\\b', '\\1+', testo)