将多行连接成一个字符串

Concatenate lines into one string

我需要将文本从字符串拆分并编辑为特定公式。

文本字符串是:

1
2
3
4
5

1
2
3
4
5

1
2
3
4
5

1
2
3
4
5

1
2
3
4
5

 

我需要它是:

1;2;3;4;5
<br>
1;2;3;4;5
<br>
1;2;3;4;5
<br>
1;2;3;4;5
<br>
1;2;3;4;5
<br>
1;2;3;4;5
<br>

在 1 个字符串中,我有 50 个字符串需要它作为该公式的行。
我尝试使用按新行拆分并向每个单词添加字符,然后按字符拆分但它对我没有帮助。

假设换行符作为 CR/LF 序列给出

Dim result = input.Replace(vbCrLf, ";")

Dim result = input.Replace(Environment.NewLine, ";")

参见:https://dotnetfiddle.net/pB08ay


您更新后的更复杂的输入字符串可以这样处理

Dim result = input.Replace(Environment.NewLine, ";").
                   Replace(";;", Environment.NewLine & "<br>" & Environment.NewLine)

我们和以前一样开始。这会生成一个类似于 1;2;3;4;5;;1;2;3;4;5;;1;2;3;4;5;;1;2;3;4;5;;1;2;3;4;5 的字符串。 然后我们用两个换行符之间嵌入的 <br> 替换双分号。

试试下面这个功能:

Private Function FormatString(ByVal InputString As String) As String
    InputString = InputString.Replace(vbCrLf, "")
    For i = 0 To InputString.Length - 1
        InputString = InputString.Insert(i + i, ";")
    Next
    InputString = InputString.Remove(0, 1)

    Return InputString
End Function