Я бы использовал регулярные выражения. В Инструменты | Ссылки , добавьте самую высокую версию библиотеки регулярных выражений Microsoft VBScript, доступную на вашем ПК (5.5 на моем). Тогда вы можете использовать такой код:
Sub main()
Dim x, m
Set x = myparser("BBCTEEBOBBB")
For Each m In x
Debug.Print m.Value
Next
End Sub
Function myparser(string_to_parse)
Dim splitter As New RegExp
splitter.Pattern = "E|BB|CT|BOB"
splitter.Global = True
Set myparser = splitter.Execute(string_to_parse)
End Function
Функция myparser
создает объект MatchCollection
, к которому можно обращаться как в подпрограмме main
. Выходными данными является список по порядку всех совпадений, найденных во входной строке. Вы должны быть в состоянии легко преобразовать это, чтобы сгенерировать массив или строку, разделенную пробелом.