Я предложил бы, чтобы, а также использующий SCM, используйте систему отслеживания ошибок. Даже при том, что можно волновать пребывание в течение немного большего количества времени, добавляя в вещах, которые должны быть сделаны, это обеспечивает конкретную запись успеха в более легком для следования за форматом, чем журналы изменений от управления версиями.
Это также дает Вам теплый fuzzies при пересечении вещей от списка. Я рассматриваю его как расширение Списка ожидающих выполнения задач.
Разделение на несколько символов не так уж сложно; в методе String.Split есть перегрузки, которые делают это:
Dim input As String = "##RES00012## Some value ##RES00034## Another value"
Dim parts As String() = input.Split(New String() {"##RES"}, StringSplitOptions.RemoveEmptyEntries)
Это даст вам массив с двумя элементами:
"00012## Some value "
"00034## Another value"
Однако разделитель не указан. Однако это не слишком сложно; он должен быть добавлен к каждому из элементов (кроме первого, если строка не начинается с разделителя):
Dim input As String = "##RES00012## Some value ##RES00034## Another value"
Dim parts As String() = input.Split(New String() {"##RES"}, StringSplitOptions.RemoveEmptyEntries)
For i As Integer = 0 To parts.Length - 1
If i > 0 OrElse input.StartsWith("##RES") = True Then
parts(i) = "##RES" & parts(i)
End If
Next