Как обнаружить определенный символ в строке в VB.NET? - PullRequest
0 голосов
/ 12 июля 2011

Хорошо, поэтому в программе, над которой я работаю в VB.NET, я пытаюсь сделать так, чтобы я мог взять список строк (каждая на отдельной строке).Для каждой строки я хочу взять строку и разбить ее на три части.Первая часть идет от начала строки до первого двоеточия в строке, вторая часть - от первого двоеточия до символа at, а последняя часть - от символа at до конца строки.

Например, я бы взял строку из серии строк: hello: world @ yay

Я бы хотел разбить ее на три отдельные строки из «hello», «world»,и "yay".

Как бы я сделал такую ​​вещь в VB.NET?

Ответы [ 3 ]

1 голос
/ 12 июля 2011

Вы можете сделать это с помощью Split. Например, я делю строку, которую я мог бы сохранить, поэтому мне не пришлось бы Split ее снова. Однако это проще понять:

Dim s as String = "hello:world@yay" 'This can be a string from a loop.
Dim hello As String = s.Split(":")(0)  'Get everything before colon.
Dim world As String = s.Split(":")(1).Split("@")(0) 'Get everything after colon, and split the result again, grabbing everything before the amp.
Dim yay As String = s.Split(":")(1).Split("@")(1) 'Get everything after colon, and split the result again, grabbing everything after the amp.

Если вы читаете из текстового файла, например

    Dim objReader As New StreamReader("c:\test.txt")
    Dim s As String = ""
    Dim hello As String
    Dim world As String
    Dim yay As String

    Do
        s = objReader.ReadLine()
        If Not s Is Nothing Then
           hello = s.Split(":")(0)
           world = s.Split(":")(1).Split("@")(0)
           yay = s.Split(":")(1).Split("@")(1)
        End If
    Loop Until s Is Nothing
    objReader.Close()
0 голосов
/ 12 июля 2011

Посмотрите на string.indexOf и возьмите его оттуда

0 голосов
/ 12 июля 2011

Используйте команду split

Начните с разделения строки с помощью «:», а затем разделите второй элемент редактирования с помощью «@»

...