【发布时间】:2014-03-09 06:05:36
【问题描述】:
我一直致力于从文本文件中获取两个单词之间的字符串,其中这些单词重复了多次。
我的文件中有什么;
Name: Person1
Age: 20
Name: Person2
Age:21
Name: Person3
Age:22
我想要的输出;
Person1
Person2
Person3
到目前为止我做了什么;
Public Function StrBtw(ByVal Text_ As String, ByVal Start_ As String, ByVal End_ As String) As String
Dim V As String = Nothing
V = Text_.Substring(Text_.IndexOf(Start_) + Start_.Length, Text_.IndexOf(End_) - Text_.IndexOf(Start_) - Start_.Length)
Return V
End Function
用法;
Dim A As String = myFileString
For i As Integer = 0 To A.Length - 1
If i = A.IndexOf(W) Then
TextBox1.Text &= StrBtw(A, "Name: ", "Age: ")
i = A.IndexOf(W) + "Name: ".Length
End If
Next
电流输出;
Person1
如上所述,输出仅显示 Person1 的名称,而我想要所有名称。我认为可能的原因可能是 IndexOf 函数每次都返回到第一个“名称:”。 我尝试使用正则表达式。我发现它非常混乱,结果仍然是一样的。 我已经为此花费了两个小时,因此感谢您提供任何帮助。
【问题讨论】: