1

2つの文字列がありString.Split()、それらにメソッドを使用したいのですが、文字列に「Love You」が含まれている場合は、スペースを無視して1つの要素として配列に保存します。ただし、「Love」のみが含まれている場合は、通常どおり保存する

str1 = "I Love Her"
str2 = "I Love You Not"


'no problem with splitting the first string
Dim strsplit1() As String = str1.Split(New String() {" "}, StringSplitOptions.None)

2番目の文字列の場合..スペーススプリッターを無視して「LoveYou」を1つの要素として保存するにはどうすればよいですか?

これは単なる例であり、私の心はindexofLove + 1をチェックするように言っていますが、どうすればLoveのインデックスを取得できますか?!

4

2 に答える 2

5

ここで簡単なトリックを使用できます。文字列を分割する前に「LoveYou」を「Love_You」に置き換え、分割が完了したら、受信した配列をスキャンして「Love_You」を「Loveyou」に置き換えます。

于 2012-08-31T16:22:18.520 に答える
1

これが私のために働いたものです

 Dim strsplit2() As String = str2.Split(New String() {" "}, StringSplitOptions.None)
    Dim loveindex = Array.IndexOf(strsplit2, "Love")
    If strsplit2(loveindex + 1) = "You" Then
        strsplit2(loveindex) = "Love You"
    End If

strsplit2(loveindex) が定義済みの ArrayList に存在するかどうかを確認するだけなので、残りは気にしません。

それで

  For Each x As String In strsplit2
        If myarraylist.Contains(x) Then
            MsgBox(x)
            Exit For
        End If
    Next

言及せずに申し訳ありませんが、あなたのソリューションは、残りの配列を気にする人にとっては良いことです。

私の問題は、「Holmegaard」と呼ばれるグループと「Holmegaard Lamps」と呼ばれるグループが 2 つあり、これらは製品名に含まれており、それぞれに適切な画像を表示するためだけに解析する必要があったことです。

于 2012-08-31T16:38:21.290 に答える