static bool SubstringEqualHelper(StringBuilder sb, int start, UString what, bool ignoreCase = false) { if (ignoreCase) for (int i = 0; i < what.Length; i++) { if (char.ToUpperInvariant(sb[start + i]) != char.ToUpperInvariant(what[i])) return false; } else for (int i = 0; i < what.Length; i++) { if (sb[start + i] != what[i]) return false; } return true; }