Работа со Split

  • Автор темы azzzza
  • Дата начала
Статус
Закрыто для дальнейших ответов.
A

azzzza

Добрый день. Помогите, пожалуйста, справиться с проблемой.
2. Есть строка, типу
Код:
str$ = "a-a.1; a-b.1; a-a.2; a-b.3; a-a.4; a-a.7; a-b.2..."
Нужно найти, сколько раз в каждом маленьком отрезке(который отделен двоеточием) встречается a-a.
Думаю в следующем направлении направлении:
Разбить строку Split-ом на куски и в цикле сравнивать на вхождение через Instr и увеличивать счетчик.
Но реализовать это не получается. Пробовал делать что-то такое:

Код:
Dim arr As Variant
Dim num As Integer

arr = Split(str$,";")
В arr сохранился нужный массив, но тип у него Variant
Код:
num = 0 ' счетчик вхождений
А дальше проблема.
Код:
If (в массив сохранилось минимум 2 элемента?) Then
For i%= 1 To длинна массива
num = num + 1
Next
End If
Messagebox "Number = "&CStr(num)
Тут не знаю, как проверить сколько элементов массива загрузилось после Split-а и как получить сам массив из Variant-а. Может кто-то подсказать?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 985
611
BIT
473
я чёта не втупляю, а чё Lbound Ubound отменили?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 985
611
BIT
473
зависит от подхода и задачи ;)
если вместо тупого перебора возможен алгоритм...
да и замеров у меня нет - не могу сказать однозначно, просто коды не интересует кол-во и порядок - forall удобнее и нагляднее
 
A

azzzza

С forall получилось всё красиво. Спасибо!
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!