Строитель строк Добавление значения в середину существующего отростка - PullRequest
0 голосов
/ 05 мая 2020

У меня есть Dims, на которые я ссылаюсь, чтобы добавить строку, однако мои требования требуют, чтобы я разделил один из моих предыдущих Dims, который я добавляю. Пожалуйста, посмотрите пример ниже, чтобы показать вам, чего я пытаюсь достичь. В основном мне нужен способ для моего нового Dim, добавленного в go smack dab в середине существующего Dim, который уже был добавлен. ** Примечание. Dim a может быть динамическим c, поэтому я не знаю, сколько символов он вернет.

Я использую функцию StringBuilder в VB.

Dim sb = New StringBuilder()

Dim a = someValueForA

Dim b = someValueForB

Dim c = someValueForC

Dim d = someValueForD

sb.AppendFormat("-{0}",a)
sb.AppendFormat("-{0}",b)
sb.AppendFormat("-{0}",c)

result = "someValueAsomeValueBsomeValueC"

теперь мне нужно вставить d прямо в середину «C», чтобы выглядеть примерно так:

result = "someValueAsomeValueBsomesomeValueDValueC"

1 Ответ

2 голосов
/ 05 мая 2020

Вам нужно рассчитать позицию, а затем использовать sb.Insert:

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
   Dim sb = New StringBuilder()
   Dim a = "someValueA"
   Dim b = "someValueB"
   Dim c = "someValueC"
   Dim d = "someValueD"

   sb.AppendFormat("-{0}", a)
   sb.AppendFormat("-{0}", b)
   sb.AppendFormat("-{0}", c)
   sb.Insert(sb.Length - (c.Length \ 2), d)

   MessageBox.Show(sb.ToString())
End Sub
...