Есть массив элементов типа int, например {-50, 2, 55, 985, 98515, -5354}
Помогите, пожалуйста, сообразить, как при помощи LINQ перебрать все эти элементы и добавить в новый массив только те, которые содержат две цифры 5. В массив должны поместиться след. элементы: { 55, 98515, -5354}.
foreach (var n in oldArray.Where(x => x.ToString().Contains('5'))) // этот кусок кода выводит только те элементы, в которых хотя бы раз содержалась пятерка. Помогите доработать
int numOf5(int number){
number = Math.Abs(number);
int ret = 0;
while(number > 0){
int rest = number%10;
if (rest == 5) ret++;
number = number / 10;
}
return ret;
}
....
var array = new[] { -50, 2, 55, 985, 98515, -5354 };
foreach (var item in array.Where(x => numOf5(x) >= 2))
Console.WriteLine(item);
....
55
98515
-5354
UPD
var array = new[] { -50, 2, 55, 985, 98515, -5354 };
foreach (var item in array.Where(x => x.ToString().Count(c=>c == '5') >= 2))
Console.WriteLine(item);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
В vs 2017 и до него Intellisense работал просто отличноЯ набирал текст, не важно с большой буквы, с ошибкой - visual studio сам выбирал вариант, подсвечивал...
Как прописать регулярное выражения для Regex , чтобы в строке найти два одинаковых слова(не более)?