2016-04-14 61 views
1

我有一个包含大量行的制表符分隔文件。我试图输出包含一个字符串的确切实例的文件中的第一行和最后一行,而不输出包含部分实例的行。例如,我正在寻找的文件中包含制表符分隔的“100”,只返回这些行,而不是那些含有100584 5416100等我的文件可能看起来像所有行:查找字符串,忽略偏好并添加到列表

15131 4845154 78465500 100 1784874 <-- should be found 
10048 7846545 78464989 875 9897845 <-- should not be found 
74654 4784848 99135456 100 7465464 <-- should be found 
10078 8786468 84686446 875 8784845 <-- should not be found 

我以为最好的方式是填充一个列表:

Dim myList As List(Of String) 
myList = IO.File.ReadLines(SomeFile).OfType(Of String).Where(Function(s) s.Contains("100")).ToList 

然后,myList.first和myList.last返回相应的行。这工作正常,但上面的代码也产生也包含部分实例的第一行和最后一行。这怎么解决?非常感谢。

回答

1

Contains("100")改为Contains(" 100 ")。请注意数字周围的空格。

+0

非常感谢!你的指针让我重新看看这个。我用Contains(vbTab&“100”&vbTab) – MalLav

+0

解决了问题真棒。您可以将我的答案设置为已接受或添加您自己的答案并接受该答案。 – Jeroen