从全文中查找更改的字符串

时间:2015-12-16 15:02:11

标签: .net vb.net string parsing substring

我需要从整个文本中找到一段字符串。我知道这篇文章的开头是什么,我知道它可能会以什么结束。要在此处绘制示例,我将向您显示与我正在搜索的内容类似的字符串。

AAOT:1980

  1. (Aaot :)无论如何,那部分总是留在那里。
  2. (198)这三个(可能有更多/更少的数字)总是会改变。
  3. (0,结束数字)此部分确实有变化,但它总是1,2,3,4,5,6,7,8,9。最后一位数字前面的数字也是如此
  4. 我的理论是让程序检查第一部分之后的数字,从不改变并搜索最后一个数字,然后找到它们之间的数字。我不确定它是否可能,但这是我的理论。

    我也可以让程序循环遍历数字并等到找到匹配的数字。这可以通过尝试像这样aaoa:1,文本不包含aaoa:1,尝试aaoa:2,它匹配。然后以相同的方式尝试其他数字。这是一个慢得多的方式。

    NB!在一个文本中很可能是这样的多个字符串。我需要把整个字符串不只是数字。

2 个答案:

答案 0 :(得分:0)

只需使用SubString并根据字符串的长度调整长度:

super()

答案 1 :(得分:0)

如果我们要查找冒号后面的数字,那么这将返回这些数字的列表。

Private Function GetDoubles(Text As String) As List(Of Double)
    Dim parts() As String = Split(Text, ":")
    Dim results As New List(Of Double)
    For i As Integer = 1 To parts.Count Step 2 'Odd numbered elements will start with numbers
        results.Add(Val(parts(i))) 'Val function processes only the characters that can be part of a number and ignores the rest.
    Next
    Return results
End Function

如果数字总是整数,则此代码将起作用:

Private Function GetIntegers(Text As String) As List(Of Integer)
    Dim parts() As String = Split(Text, ":")
    Dim results As New List(Of Integer)
    For i As Integer = 1 To parts.Count Step 2 'Odd numbered elements will start with numbers
        results.Add(CInt(Val(parts(i)))) 'Val function processes only the characters that can be part of a number and ignores the rest.
    Next
    Return results
End Function