C# 获取数组中特定项的索引
我想检索数组的索引,但我只知道数组中实际值的一部分 例如,我在数组中动态地存储一个作者名,比如说“author='xyz'”C# 获取数组中特定项的索引,c#,arrays,C#,Arrays,我想检索数组的索引,但我只知道数组中实际值的一部分 例如,我在数组中动态地存储一个作者名,比如说“author='xyz'” 现在我想找到包含它的数组项的索引,因为我不知道值部分 如何做到这一点?您可以使用 编辑:我看到你有一个字符串数组,你可以使用任何代码来匹配,这里有一个简单的示例包含: var index = Array.FindIndex(myArray, row => row.Contains("Author='xyz'")); 也许您需要使用一个?tryArray.Find
现在我想找到包含它的数组项的索引,因为我不知道值部分 如何做到这一点?您可以使用 编辑:我看到你有一个字符串数组,你可以使用任何代码来匹配,这里有一个简单的示例包含:
var index = Array.FindIndex(myArray, row => row.Contains("Author='xyz'"));
也许您需要使用一个?try
Array.FindIndex(myArray,x=>x.Contains(“作者”)代码>前面的答案只有在您知道要搜索的确切值时才起作用-问题说明只有部分值已知
Array.FindIndex(authors, author => author.Contains("xyz"));
这将返回包含“xyz”的第一项的索引。FindIndex扩展名
奖励:扩展索引
我第一次写这篇文章时没有正确阅读问题
static class ArrayExtensions
{
public static int IndexOf<T>(this T[] array, T value)
{
return Array.IndexOf(array, value);
}
}
您使用的是Array
还是string[]
?这是一个string[],我想在Array中找到一些东西。Indexof(arrFilter,“author”)这里author不是完整值的一部分,而是完整值的一部分。可能的重复值也可以使其更易于使用和智能化。
Array.FindIndex(authors, author => author.Contains("xyz"));
static class ArrayExtensions
{
public static int FindIndex<T>(this T[] array, Predicate<T> match)
{
return Array.FindIndex(array, match);
}
}
int[] array = { 9,8,7,6,5 };
var index = array.FindIndex(i => i == 7);
Console.WriteLine(index); // Prints "2"
static class ArrayExtensions
{
public static int IndexOf<T>(this T[] array, T value)
{
return Array.IndexOf(array, value);
}
}
int[] array = { 9,8,7,6,5 };
var index = array.IndexOf(7);
Console.WriteLine(index); // Prints "2"