using System; using System.Globalization; using System.Linq; using System.Collections.Generic; public class Test { public static void Main() { int[] numbers = { 5, 2, 1, 5 }; string[] words = { "flibble", "bobble", "double", "dumble" }; IEnumerable result = numbers .Select((len, i) => { string word = words.ElementAtOrDefault(i); if (word != null) { word = word.Length >= len ? word.Substring(0, len) : word; } return word; }); Console.Write(String.Join(",",result.ToArray())); } }