包含字符串
问题描述:
我有文件,标签和目标查找数组索引,这是例子:包含字符串
TAG1|TARGET1,TARGET2
TAG2|TARGET3,TARGET4
我开始用File.ReadAllLines
Dim MAIN As String() = File.ReadAllLines("")
在某些时候,我创建字符串数组目标之一,我需要知道什么是标签索引(哪个数组行),例如,如果我有TARGET3我想知道它在第二行,所以它是在主(1),然后我可以抓住TAG = TAG2。
我无法得到它的工作,我试过几个方法:
Array.IndexOf(MAIN,"TARGET3")
总是返回-1,它与满弦寿工作,
Array.IndexOf(MAIN,"TAG2|TARGET3,TARGET4")
返回1.我试着用数组.FindIndex,是一样的。
所以我的问题是:如何获得部分数组项的索引。感谢您的任何帮助。
答
您可以使用LINQ来搜索您的阵列以这种方式
Dim search = "TARGET3"
Dim line = MAIN.FirstOrDefault(Function(x) x.Contains(search))
这将直接返回行与匹配的单词
@Steve,这是奇怪的事情 - 如果我做MAIN.Contains( “TARGET3”)它返回false – dwarfmine