![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Преобразование строки в массив. Функция Split
Предполагается, что исходная строка состоит из элементов (подстрок), разделенных специальными символами - разделителями. Функция Split возвращает одномерный массив из элементов строки. Синтаксис: Split(expression[, delimiter[, limit[, compare]]]) Параметры:
Приведем пример, в котором сложноподчиненное предложение разделяется на простые предложения: Public Sub SplitString() 'В этой процедуре сложное предложение разделяется на простые 'Объявляем динамический массив Dim Simple() As String, i As Byte
'Размерность массива Simple устанавливается автоматически 'в соответствии с размерностью массива, возвращаемого функцией Split Simple = Split(" А это пшеница, которая в темном чулане хранится в доме, " _ & " который построил Джек", ", ") For i = LBound(Simple) To UBound(Simple) Debug.Print Simple(i) Next i End Sub
В результате работы этой процедуры создается массив из трех элементов: А это пшеница которая в темном чулане хранится в доме который построил Джек
Обратите внимание, для использования результатов работы функции Split создается динамический массив строк. О размерности его нет нужды заботиться, поскольку в момент присвоения ему результата выполнения Split, он заполняется элементами и у него появляется нижняя и верхняя граница. Далее с этим массивом можно работать обычным образом. У функции Split, на наш взгляд, есть один недостаток. Хотя в роли разделителя может выступать последовательность символов, в нашем примере это пара символов " запятая, пробел", но нельзя использовать разные разделители элементов. В задачах подобного рода типичной является ситуация, когда элементы отделяются разными разделителями, возможно, окруженными пробелами. Позже мы покажем, как можно справиться с этой задачей.
|