2010-12-08 20 views
40

Bir dizinin dizinini almak istiyorum ancak dizideki gerçek değerin yalnızca bir parçasını biliyorum, örneğin dizideki yazar adını dinamik olarak yazıyorum "author =" xyz '" Ben bunu nasıl yapılacağını değer parçasını bilmiyorum gibi bir şey gibi bir şey içeren dizi öğesi dizini bulmak istiyorum.Dizideki belirli bir öğenin dizini alma

+0

Bize bir örnek verebilir misiniz? – Ani

+0

'Array' veya' string [] 'kullanıyor musunuz? – hunter

+0

onun bir dize [] ve ben Array.Indexof (arrFilter, "yazar") bir şey bulmak istiyorum burada yazar tam bir değer tam bir parçası yerine tam bir değer – Mac

cevap

79

Sen FindIndex

var index = Array.FindIndex(myArray, row => row.Author == "xyz"); 

Edit kullanabilirsiniz: Sana dize dizisi var bakın, basit burada bir örnek eşleştirmek için herhangi bir kod kullanabilirsiniz içeriyor: Belki

var index = Array.FindIndex(myArray, row => row.Contains("Author='xyz'")); 

regular expression'u kullanmanız mı gerekiyor?

7

Eğer aradığınız tam değerini bilmek durumunda çalışacaktır Array.FindIndex(myArray, x => x.Contains("author");

5
 int i= Array.IndexOf(temp1, temp1.Where(x=>x.Contains("abc")).FirstOrDefault()); 
4

önceki cevaplar deneyin - sadece kısmi bir değer bilinir soru durumları.

Array.FindIndex(authors, author => author.Contains("xyz")); 

Bu, "xyz" içeren ilk öğenin dizinini döndürür.

İlgili konular