Imports System.Text.RegularExpressions

Module Module1
  Private r As Regex = New Regex( _
    "^N(?:;(?!CHARSET=UTF-8)[^:]*|)(?:;CHARSET=UTF-8|):(?<strSurname>[^;\n\r]*);?(?<strGivenName>[^;\n\r]*);?(?<strMidName>[^;\n\r]*);?(?<strPrefix>[^;\n\r]*);?(?<strSuffix>[^;\n\r]*)", _
    RegexOptions.IgnoreCase Or RegexOptions.Multiline)
  Sub Main()
    Dim s As String = "BEGIN:VCARD"     + System.Environment.NewLine + _
                      "VERSION:2.1"     + System.Environment.NewLine + _
                      "N:Bacon;Kevin"   + System.Environment.NewLine + _
                      "FN: Kevin Bacon" + System.Environment.NewLine + _
                      "ORG:Movies.com"
    Dim m As Match = r.Match(s)
    If (m.Success) Then
      Console.WriteLine(m.Groups("strSurname").Value)
      Console.WriteLine(m.Groups("strGivenName").Value)
      Console.WriteLine(m.Groups("strMidName").Value)
      Console.WriteLine(m.Groups("strPrefix").Value)
      Console.WriteLine(m.Groups("strSuffix").Value)
    End If
  End Sub
End Module