Рейтинг:
1
Thomas Daniels
Вы можете использовать метод LINQ Пересекаться[^] чтобы легко найти элементы в обоих массивах:
var inBothArr1AndArr2 = arr1.Intersect(arr2);
var inBothArr1AndArr3 = arr1.Intersect(arr3);
var inBothArr1AndArr4 = arr1.Intersect(arr4);
Теперь у вас их три
IEnumerable<T>
С. делайте с их содержимым то, что вам нужно.
[Редактировать]
Из вашего комментария следует, что вы хотите сделать это один за другим. Это тоже возможно:
for (int i = 0; i < arr1.Length; i++)
{
if (arr2.Contains(arr1[i]))
{
// Array 2 contains this element. Index: i. Value: arr1[i]
}
// do the same for arr3 and arr4
}
Thomas Daniels
См. Мой редактировать.
kav@94
for (int i = 0; i < wavarr.Длина; i++)
{
если (basearr.Содержит(wavarr[i]))
{
/ Блок 2 содержит этот элемент. Индекс: i. значение: arr1[i]
}
// сделайте то же самое для arr3 и arr4
}
я сделал это, но это дает ниже ошибку
- Система.Массив' не содержит определение для 'содержит', а не метод расширения 'содержит', принимающий первый аргумент типа 'System.Массив' может быть найден (пропущена директива using или ссылка на сборку?) C:\Users\yaminik\Desktop\MT оригинал из сети с 208 db\mttraining\SubjectItems. aspx.cs 153 28 C:\...\mttraining\
Thomas Daniels
Добавь using System.Linq;
в верхней части вашего досье.
Thomas Daniels
Если вы хотите сохранить несколько из этих переменных, вы можете создать List<string>
и храните их там.
Thomas Daniels
В верхней части вашего файла: using System.Collections.Generic;
Перед вашим циклом for: List<string> list = new List<string>();
Внутри оператора " if " цикла: list.Add(arr1[i]);
После цикла for вы можете получить доступ к списку как к массиву.
kav@94
мой первый массив
"400005733. wav"
"400006813. wav"
мой второй массив
"400005733-b.doc"
"400006813-b.doc"
если мы увидим их 400005733. wav совпадает с 400005733-b.doc невзирая на возбуждения, но у меня есть -b, который должен быть удален, и это имя после удаления -b "400005733.doc" это должно быть сохранено в строковой переменной, как я могу это сделать
Thomas Daniels
В классе System. IO. Path есть метод GetFileNameWithoutExtension, который вы можете использовать.
Также вы можете использовать метод Replace для строки, чтобы удалить "- b", например yourString.Replace("-b", "");