Функция СТР_РАЗД
Функция СТР_РАЗД разделяет строку на фрагменты по указанному разделителю.
ФУНКЦИЯ СТРОКИ: СТР_РАЗД(СТРОКА: стр; СТРОКА: разд = ""; ЛОГИКА: пустые = НЕТ)
Параметры
- стр
- Строка для разделителя.
- разд
- Необязательный параметр. Символ-разделитель или список разделителей.
- пустые
- Необязательный параметр. Признак включения пустых фрагментов в результат. Пустым фрагментом считается ситуация, когда подряд идут два разделителя.
Возвращаемое значение
Значение контейнерного типа. Список строковых фрагментов. Если параметр пустые равен ДА, то список содержит как минимум один элемент.
По умолчанию в качестве разделителей используются пробельные символы, которые включают в себя следующие:
- пробел;
- табуляция (^t);
- перевод строки (LF, ^s);
- возврат каретки (CR, ^r).
Если параметр разд задан, то разделителем считается каждый символ указанной строки. Есть возможность краткого указания наборов разделителей:
" " | – | два подряд идущих пробела, задают набор всех пробельных символов; |
".." | – | две подряд идущие точки, задают набор всех символов пунктуации. |
Одиночные символы-разделители могут сочетаться с наборами, например, строка " .._" задает в качестве разделителей все пробельные символы все символы пунктуации и символ подчеркивания.
Для задания многосимвольного разделителя первым символом указывается восклицательный знак. Следующие за восклицательным знаком символы составляют разделитель: "!<разделитель>". Может быть задан только один многосимвольный разделитель.
Пример:
ПЕРЕМ список = СТР_РАЗД("3;;ДА;;42", ";", ДА) СООБЩЕНИЕ(СТР(список)) // (1:"3",2:"",3:"ДА",4:"",5:"42") ПЕРЕМ список1 = СТР_РАЗД("", ",", НЕТ) СООБЩЕНИЕ(СТР(список1)) // () ПЕРЕМ список2 = СТР_РАЗД("", ",", ДА) // Внимание - один пустой фрагмент! СООБЩЕНИЕ(СТР(список2)) // (1:"")