Разделить текст на все строки внутри строки - PullRequest
0 голосов
/ 19 февраля 2019
  • Изначально ключевые слова мы извлекали из текстового файла, расположенного на веб-сервере.

Dim KeyWords As String = Split (Split (TempSMTPFile, "# Keywords #") (1), "# Keywords #") (0)

Я хочу создать функцию, которая будет разбивать все ключевые слова внутри строки

The keywords in this example will be: 

' This list might be changed to more or less keywords.

     Dim KeyWords As String = "[One=Test1]" & vbNewLine & "[Two=Test2]" & vbNewLine & "[Three=Test3]"

        ' I Need a function to split out all keywords and do below check between all splits.

        If KeyWords.ToLower.Contains("[" & Splited_keyword & "=") Then ' One, Two, Three
            MsgBox(Split(Split(KeyWords, "[" & Splited_keyword & "=")(1), "]")(0)) ' Test1, Test2, Test3
        End If

        ' This should print OneTest1, TwoTest2, ThreeTest3

Ответы [ 2 ]

0 голосов
/ 19 февраля 2019

Спасибо за ваши комментарии, я смог решить эту проблему с помощью этого решения.

    Dim str As String() = keywords.Split(New [Char]() {CChar(vbCrLf)})
        For Each s As String In str

            If s.Contains("[") Then
                Dim SplittedKeyword = Split(Split(s, "[")(1), "=")(0)
                If TextUserShortDescription.Text.ToLower.Contains(SplittedKeyword.ToLower) Then
                    MsgBox(SplittedKeyword & (Split(Split(s, "[" & SplittedKeyword & "=")(1), "]")(0)))
                End If
            End If
        Next
0 голосов
/ 19 февраля 2019

Это может помочь вам (не проверено):

Dim keyValues as String()

keyValues = KeyWords.Split(Environment.NewLine)

For Each (keyvalue as string in keyValues)
    MsgBox(keyvalue.SubString(1, keyvalue.IndexOf("["c) + " " + keyvalue.SubString(keyvalue.IndexOf("="c), keyvalue.LastIndexOf("]"c)
End For
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...