Разбить

Разбивает текст по строке-разделителю на несколько частей.

Синтаксис

Разбить(Строка, Разделитель[, Перем1, Перем2,…])
Разбить(Строка, Разделитель, Массив|Объект)

Параметры

Строка (текст или двоичные данные) – разбиваемый текст.

Разделитель (текст) – строка-разделитель, по которой будет разбиваться текст. Может содержать несколько символов, текст тогда разбивается по всей указанной подстроке. Может быть пустой, в этом случае разбиение идёт посимвольно.

Перем1, Перем2,…(переменная) – имена переменных, в которые будут помещаться результаты разбиения текста. Если количество переменных больше количества получаемых в результате разбиения частей, то в оставшиеся переменные помещается пустая строка. Если наоборот, то оставшиеся части текста теряются. Если не указаны, то результат помещается в массив.

Массив (массив) – вместо имён переменных, может быть указан массив, в который будут помещены результаты разбиения текста. При этом элементы массива будут нумероваться, начиная с единицы – 1, 2, 3, 4 и так далее по количеству получившихся частей. Таким образом, выражение "Размер(Массив)" вернёт количество получившихся частей.

Объект (объект) – может быть указан объект, в который будут помещены результаты разбиения текста. При этом переменные объекта будут нумероваться, начиная с единицы – 1, 2, 3, 4 и так далее по количеству получившихся частей.

Возвращает

Число – минимум из количества получившихся в результате разбиения частей и количества установленных переменных.

Массив – при отсутствии установленных переменных.

Примеры

пАдрес ="150060,г.Ярославль,ул.Блюхера,84";
Разбить(пАдрес, ",", пИндекс, пГород, пУлица, пДом);
# пИндекс будет равен "150060", пГород, "г.Ярославль", пУлица – "ул.Блюхера", пДом - "84"

Если же нужно просто получить индекс из адреса можно написать так:

Разбить(пАдрес, ",", пИндекс);

Для получения списка всех символов переменной "Индекс" пишем так:

перем пСимволы[];
Разбить(пИндекс, "", пСимволы);
# в результате в пCимволы[1] будет 1, в пCимволы[2] – 5, в пCимволы[3]–0, в пCимволы[4]–0, в пCимволы[5]–6, в пCимволы[6] – 0;
пРазмерИндекс = Разбить(пИндекс, "",пСимволы);
# в пРазмерИндекс будет "6";

или так:

пСимволы = Разбить(пИндекс, "");

Для выделения подстроки, с известным номером надо:

пСимвол = Разбить(пИндекс, "" , [5]);
# в пСимвол "6"

используя функцию ПодСтрока можно получить аналогичный результат:

пСимвол = ПодСтрока(пИндекс, 5, 1);
# в пСимвол "6"

Для отделения в сумме рублей от копеек:

Разбить(пCумма, ".", пРуб, пКоп);

См. также:

•  РазбитьПоМаске