IEnumerable<FTPInfo> result = typeA.Select(x => > { > string[] line = ((string)x).Split((char[])null, StringSplitOptions.RemoveEmptyEntries).Take(9).ToArray(); > return new FTPInfo > { > File = x.Substring(x.IndexOf(line.Last())), > Size = line[4], > Month = line[5], > Day = line[6], > YearOrTime = line[7] > }; > });(I know. This won't work either if the first word of the file name occurs earlier in the string. I don't want to play any more :-{ )