Vb.net 获取一组字符串周围的字符串项?

Vb.net 获取一组字符串周围的字符串项?,vb.net,Vb.net,好的,我在我的项目的最后一部分。。。如果我有一个字符串,比如: James Williams 432 Co Rd 1 Cullman Al 35055 Or James Williams 432 Co Rd 12 Cullman Al 35055 Or James Williams 432 Co Rd 123 Cullman Al 35055 Or James Williams 432 Co Rd 1234 Cullman Al 35055 这些数字可以是0到9之

好的,我在我的项目的最后一部分。。。如果我有一个字符串,比如:

 James Williams 432 Co Rd 1 Cullman Al 35055
 Or     
 James Williams 432 Co Rd 12 Cullman Al 35055 
 Or
 James Williams 432 Co Rd 123 Cullman Al 35055 
 Or
 James Williams 432 Co Rd 1234 Cullman Al 35055 
这些数字可以是0到9之间的任何数字。。如何将CR和后面的数字立即分配给字符串值

我必须解析文件中的地址信息。。。对于不包含CR(表示县道)的地址,解析器可以正常工作。因此,我想我可以使用以下方法从传递给解析器的字符串中去掉地址部分:

  Dim _holder as string = {Gets a value I can track already in the current Function}
  DIM _Address as string = Nothing
  IF _holder.contains("Co Rd") Then
      _Address = { "Numbers just before Co Rd" + " " + "Co Rd" + "Numbers Just after Co Rd"}
  End If

很大程度上取决于数据的有效性,但下面是一个简单的示例:

Private Function ExtractAddressWithCoRd(ByVal input As String) As String
  Dim add1 As String = String.Empty
  Dim add2 As String = String.Empty

  Dim parts() As String = input.Split(" "c)
  For i As Integer = 0 To parts.Length - 1
    If parts(i) = "Co" AndAlso i > 0 Then
      add1 = parts(i - 1)
    ElseIf parts(i) = "Rd" AndAlso i < parts.Length - 1 Then
      add2 = parts(i + 1)
    End If
  Next

  Return add1 + " Co Rd " + add2
End Function
Private函数ExtractAddressWithCoRd(ByVal输入为字符串)作为字符串
Dim add1 As String=String.Empty
Dim add2 As String=String.Empty
Dim parts()作为字符串=input.Split(““c”)
对于i,整数=0到部分。长度-1
如果部分(i)=“Co”且i>0,则
add1=零件(i-1)
其他部分(i)=“Rd”,并且i
我无法破译这个。你想干什么?你能在之前和之后发个帖子吗。顺便说一句,你试过什么?@LarsTech:听起来他想要一个正则表达式。这不起作用,说对象没有设置为对象的实例。当它以string=input.Split(““c”)的形式点击Dim parts()时,有什么想法吗?@skindep2366输入时传递的值是什么?确保它不是来自调用源的空值。