public static int IndexOf(this StringBuilder sb, UString searchStr, int startIndex = 0, bool ignoreCase = false)
{
var stopAt = sb.Length - searchStr.Length;
for (int i = startIndex; i <= stopAt; i++)
if (SubstringEqualHelper(sb, i, searchStr, ignoreCase))
return i;
return -1;
}