#c# #linq
#c# #linq
Вопрос:
У меня есть список из более чем 50 слов переменной длины. Мне нужно получить список IEnumerable, содержащий только первые 3 символа из каждого слова длиной не менее 3 символов, и возвращать только отдельные, используя отложенное выполнение. Как я могу это сделать, используя linq в c # 6?
Комментарии:
1. Вы уже пытались что-нибудь сделать?
2. Вы что-нибудь пробовали? Пожалуйста, поделитесь им с нами
3.
words.Where(w => w.Length > 2).Select(w => w.Substring(0,3)).Distinct();
4.
List<string> variableLengthValues=new List<string>()``{"Test1","Test2","Test3","Test4"};
var firstthreeDistinctChars= variableLengthValues.Where(x => x.Length > 3).Select(y => y.Substring(0, 3)).Distinct();
Ответ №1:
Вы можете попробовать это:
var words = new List<string> {...};
var newWords = words.Where(o = o.Length >= 3).Select(o => o.Substring(0, 3)).Distinct();
Ответ №2:
IEnumerable<string> result = list.Where(x => x.Length >= 3).Select(x => x.Substring(0, 3)).Distinct();