lagr. The following solution uses basic AppleScript and has a timing result of less than a millisecond. As written, it will only work with four or fewer consecutive unwanted characters but this can be changed.
set theString to "value1,,v2.v3;,v4,.;v5"
set {TID, text item delimiters} to {text item delimiters, {".", ";"}}
set theString to text items of theString
set text item delimiters to {","}
set theString to theString as text
set text item delimiters to {",,,,", ",,,", ",,"}
set theString to text items of theString
set text item delimiters to {","}
set theString to theString as text --> "value1,v2,v3,v4,v5"
set text item delimiters to TID
The following is an ASObjC solution that also takes less than a millisecond. I prefer this for its brevity.
use framework "Foundation"
use scripting additions
set theString to "value1,,v2..v3;,v4,.;v5"
set theString to current application's NSMutableString's stringWithString:theString
theString's replaceOccurrencesOfString:"[,;.]+" withString:"," options:1024 range:{0, theString's |length|()}
set theString to theString as text --> "value1,v2,v3,v4,v5"