サンプルです。
a:元の文字列
b:連続した文字を1文字に変換
c:連続数の一番少ない文字に合わせて変換
Dim a = "ああああいいいいううううえええお"
Dim reg1 As New Regex("(?<c>.)\k<c>+")
Dim b = reg1.Replace(a, Function(m) m.Groups("c").Value)
Dim min = a.Length
reg1.Replace(a, Function(m)
Dim l = m.Value.Length
If l < min Then
min = l
End If
Return ""
End Function
)
Dim c = reg1.Replace(a, Function(m)
Dim l = m.Value.Length
Dim c1 = m.Groups("c").Value
Dim nm = l - min + 1
Return New String(c1, nm)
End Function
)