Функции для разделения строк
Документация ниже генерируется из системной таблицы system.functions.
alphaTokens
Введена в версии: v1.1
Выделяет подстроки из последовательных байтов в диапазонах a-z и A-Z и возвращает массив выделенных подстрок.
Синтаксис
Псевдонимы: splitByAlpha
Аргументы
s— строка для разделения.Stringmax_substrings— необязательный параметр. Еслиmax_substrings > 0, количество возвращаемых подстрок будет не болееmax_substrings, в противном случае функция вернёт максимально возможное количество подстрок.Int64
Возвращаемое значение
Возвращает массив выделенных подстрок из s. Array(String)
Примеры
Пример использования
arrayStringConcat
Введена в версии: v1.1
Объединяет строковые представления значений из массива с указанным разделителем. Разделитель является необязательным параметром, по умолчанию используется пустая строка.
Синтаксис
Аргументы
arr— массив для объединения.Array(T)separator— необязательный параметр. Строка-разделитель. По умолчанию — пустая строка.const String
Возвращаемое значение
Возвращает объединённую строку. String
Примеры
Пример использования
extractAllGroupsVertical
Введена в версии: v20.5
Находит все группы в строке с помощью регулярного выражения и возвращает массив массивов, где каждый массив содержит совпадающие фрагменты из всех групп, сгруппированные в порядке появления во входной строке.
Синтаксис
Псевдонимы: extractAllGroups
Аргументы
s— Входная строка для извлечения.StringилиFixedStringregexp— Регулярное выражение для поиска совпадений.const Stringилиconst FixedString
Возвращаемое значение
Возвращает массив массивов, где каждый внутренний массив содержит захваченные группы из одного совпадения. Каждое совпадение формирует массив с элементами, соответствующими захватывающим группам в регулярном выражении (группа 1, группа 2 и т. д.). Если совпадений не найдено, возвращается пустой массив. Array(Array(String))
Примеры
Пример использования
ngrams
Введена в версии: v21.11
Разбивает UTF-8 строку на n-граммы размером ngramsize символов.
Синтаксис
Аргументы
s— входная строка.StringилиFixedStringngram_size— размер n-граммы.const UInt8/16/32/64
Возвращаемое значение
Массив с n-граммами. Array(String)
Примеры
Пример использования
splitByChar
Введена в версии: v1.1
Разделяет строку на массив подстрок по указанному константному разделителю separator, состоящему ровно из одного символа.
Пустые подстроки могут появляться, если разделитель находится в начале или конце строки, или если присутствует несколько последовательных разделителей.
Настройка splitby_max_substrings_includes_remaining_string (по умолчанию: 0) определяет, будет ли оставшаяся строка включена в последний элемент результирующего массива при max_substrings > 0.
Пустые подстроки могут появляться в следующих случаях:
- Разделитель находится в начале или конце строки
- Присутствует несколько последовательных разделителей
- Исходная строка
sпуста
Синтаксис
Аргументы
separator— Разделитель, должен быть однобайтовым символом.Strings— Строка для разделения.Stringmax_substrings— Необязательный параметр. Еслиmax_substrings > 0, возвращаемый массив будет содержать не болееmax_substringsподстрок, в противном случае функция вернёт максимально возможное количество подстрок. Значение по умолчанию:0.Int64
Возвращаемое значение
Возвращает массив полученных подстрок. Array(String)
Примеры
Пример использования
splitByNonAlpha
Introduced in: v21.9
Разделяет строку по пробелам и знакам пунктуации на массив подстрок.
Настройка splitby_max_substrings_includes_remaining_string (по умолчанию: 0) определяет, будет ли остаток строки включён в последний элемент результирующего массива при max_substrings > 0.
Синтаксис
Аргументы
s— строка для разделения.Stringmax_substrings— необязательный параметр. Приmax_substrings > 0количество возвращаемых подстрок не превыситmax_substrings, в противном случае функция вернёт максимально возможное количество подстрок. Значение по умолчанию:0.Int64
Возвращаемое значение
Возвращает массив подстрок из s. Array(String)
Примеры
Пример использования
splitByRegexp
Введено в версии: v21.6
Разделяет строку по заданному регулярному выражению на массив подстрок. Если регулярное выражение пустое, строка будет разделена на массив отдельных символов. Если совпадений с регулярным выражением не найдено, строка не будет разделена.
Пустые подстроки могут появиться в следующих случаях:
- непустое совпадение с регулярным выражением находится в начале или конце строки
- имеется несколько последовательных непустых совпадений с регулярным выражением
- исходная строка пустая, а регулярное выражение непустое.
Настройка splitby_max_substrings_includes_remaining_string (по умолчанию: 0) определяет, включается ли оставшаяся часть строки в последний элемент результирующего массива при max_substrings > 0.
Синтаксис
Аргументы
regexp— Регулярное выражение. Константа.StringилиFixedStrings— Строка для разделения.Stringmax_substrings— Необязательный параметр. Приmax_substrings > 0количество возвращаемых подстрок будет не болееmax_substrings, в противном случае функция вернёт максимально возможное количество подстрок. Значение по умолчанию:0.Int64
Возвращаемое значение
Возвращает массив выделенных подстрок из s. Array(String)
Примеры
Пример использования
Пустое регулярное выражение
splitByString
Введена в версии: v1.1
Разделяет строку константным разделителем separator, состоящим из нескольких символов, на массив подстрок.
Если строка separator пуста, функция разделит строку s на массив отдельных символов.
Пустые подстроки могут появиться в следующих случаях:
- Непустой разделитель встречается в начале или конце строки
- Присутствует несколько последовательных непустых разделителей
- Исходная строка
sпуста, а разделитель не пуст
Настройка splitby_max_substrings_includes_remaining_string (по умолчанию: 0) определяет, будет ли оставшаяся строка включена в последний элемент результирующего массива при max_substrings > 0.
Синтаксис
Аргументы
separator— Разделитель.Strings— Строка для разделения.Stringmax_substrings— Необязательный параметр. Приmax_substrings > 0количество возвращаемых подстрок будет не болееmax_substrings, в противном случае функция вернёт максимально возможное количество подстрок. Значение по умолчанию:0.Int64
Возвращаемое значение
Возвращает массив выделенных подстрок из s Array(String)
Примеры
Пример использования
Пустой разделитель
splitByWhitespace
Введена в версии: v21.9
Разделяет строку по пробельным символам на массив подстрок.
Настройка splitby_max_substrings_includes_remaining_string (по умолчанию: 0) управляет тем, будет ли остаток строки включён в последний элемент результирующего массива при max_substrings > 0.
Синтаксис
Аргументы
s— строка для разделения.Stringmax_substrings— необязательный параметр. Приmax_substrings > 0количество возвращаемых подстрок не превыситmax_substrings, в противном случае функция вернёт максимально возможное количество подстрок. Значение по умолчанию:0.Int64
Возвращаемое значение
Возвращает массив подстрок из s. Array(String)
Примеры
Пример использования
tokens
Введена в версии: v21.11
Разбивает строку на токены с помощью указанного токенизатора. Токенизатор по умолчанию использует не-буквенно-цифровые ASCII-символы в качестве разделителей.
В случае токенизатора split, если токены не образуют префиксный код, вероятно, вы захотите, чтобы при сопоставлении приоритет отдавался более длинным разделителям.
Для этого передавайте разделители в порядке убывания длины.
Например, при separators = ['%21', '%'] строка %21abc будет токенизирована как ['abc'], тогда как separators = ['%', '%21'] приведёт к токенизации в ['21ac'] (что, вероятно, не то, что вам нужно).
Синтаксис
Аргументы
value— Входная строка.StringилиFixedStringtokenizer— Используемый токенизатор. Допустимые значения:splitByNonAlpha,ngrams,splitByString,arrayиsparseGrams. Необязательный параметр, если не указан явно, по умолчанию используетсяsplitByNonAlpha.const Stringngrams— Актуально только если аргументtokenizerравенngrams: необязательный параметр, определяющий длину n-грамм. Если не указан явно, по умолчанию равен3.const UInt8separators— Актуально только если аргументtokenizerравенsplit: необязательный параметр, определяющий строки-разделители. Если не указан явно, по умолчанию равен[' '].const Array(String)
Возвращаемое значение
Возвращает результирующий массив токенов из входной строки. Array
Примеры
Токенизатор по умолчанию
Токенизатор n-грамм