private int matchWith(string x, string path) { int length = (new int[] { x.Length, path.Length }).Min(); int matchLength = 0; for (int i = 0; i < length; i++) { if (!x[i].Equals(path[i])) break; matchLength++; } return matchLength; }