Warum ersetzt line2
nur abwechselnd die Hälfte der Vorkommen?
Dim line1 As String = "AAA|BBB|CCC|CCC|CCC|CCC|EEE|FFF"
Dim line2 As String = "AAA|BBB|CCC|CCC|CCC|CCC|EEE|FFF"
Dim line3 As String = "AAA|BBB|CCC|CCC|CCC|CCC|EEE|FFF"
line1 = line1.Replace("CCC", "")
line2 = line2.Replace("|CCC|", "||")
line3 = line3.Replace("CCC|", "|")
Ergebnis:
line1 = "AAA|BBB|||||EEE|FFF" -- OK, aber scheitert, wenn das Element "..|ZZZCCCZZZ|.." ist
line2 = "AAA|BBB||CCC||CCC|EEE|FFF" -- Nicht OK
line3 = "AAA|BBB|||||EEE|FFF" -- OK, scheitert jedoch bei ähnlichen Fällen wie Line1 beim Randfall "..|ZZZCCC|.."
Ich habe versucht, RegEx zu verwenden, aber erhalte ähnliche Ergebnisse.
Gibt es wirklich keinen besseren Weg als diesen unten?
Do While line1.Contains("|CCC|")
line1 = line1.Replace("|CCC|", "||")
Loop