static void ClearRange(int i1, int i2, RangeList list)
{
if (i1 == i2) return;
var str = list.GetText(i1, i2 - i1);
// find seq-s of whitespace
var regex = new Regex("\\s+");
var ms = regex.Matches(str);
foreach (Match m in ms)
{
var j1 = i1 + m.Index;
var j2 = j1 + m.Length;
list.Chars[j1] = ' ';
for (var i = j1 + 1; i < j2; i++)
{
list.Chars[i] = '\0';
}
}
}