2017-09-01 13 views
1

を含む配列のインデックスを検索し、これは一例です:私はタグや目標を持つファイルを持っている文字列

TAG1|TARGET1,TARGET2 
TAG2|TARGET3,TARGET4 

私は私が持っているいくつかの点でFile.ReadAllLines

Dim MAIN As String() = File.ReadAllLines("") 

を使用して文字列配列を作成することから始めターゲットの1つであり、タグ・インデックス(どの配列行であるか)を知る必要があります。たとえば、TARGET3がある場合、2行目でMAIN(1)にあることを知りたいので、TAG = TAG2。私はそれが働いて得ることができない

、私はいくつかの方法を試してみました:

Array.IndexOf(MAIN,"TARGET3") 

は常に-1を返し

Array.IndexOf(MAIN,"TAG2|TARGET3,TARGET4") 

は私がArrayで試してみました。1.返され、カントー、それは完全な文字列で働いていました.FindIndexは同じでした。

私の質問は:部分配列の項目のインデックスを取得する方法です。何か助けてくれてありがとう。私はMAIN.Containsを加えた場合( -

+0

@Steveの行を返します。このように

Dim search = "TARGET3" Dim line = MAIN.FirstOrDefault(Function(x) x.Contains(search)) 

をあなたの配列を検索するためのLINQを使用することができます"TARGET3")偽を返します – dwarfmine

答えて

1

あなたは、これは、それは奇妙なことだ、直接マッチングワード

+0

ありがとうございました!それは動作します:)) – dwarfmine

+1

@dwarfmine、Dim search = "TARGET3" Dim line = MAIN.FirstOrDefault(Function(x)x.Contains(search) **。 'Dim search =" TARGET3 " Dim line = MAIN.FirstOrDefault(Function(x)x.Contains(search))' ... – Codexer

+0

@Codexerは気付いてくれてありがとう。手でそれを書いた – Steve

関連する問題