Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция
Область применения:
Databricks SQL
Databricks Runtime
Разделяет str вокруг вхождений, соответствующих regex, и возвращает массив длиной не более limit.
Синтаксис
split(str, regex [, limit] )
Аргументы
-
str: выражение, разделенноеSTRING. -
regexpSTRING: выражение, которое является регулярным выражением, которое разбиваетstr. Сведения о поддерживаемых синтаксисах см. в регулярных выражениях . -
limit: необязательное выражениеINTEGERпо умолчанию — 0 (без ограничения).
Возвраты
Объект ARRAY<STRING>.
Если limit> значение 0: длина результирующего массива не будет больше limit, а последняя запись результирующего массива будет содержать все входные данные за пределами последнего совпадения regex.
Если limit< = 0: regex будет применено столько раз, сколько возможно, полученный массив может быть любого размера.
Примеры
Разделение по набору символов разделителя
Класс [ABC] символов соответствует любому из Aразделителей Bили C как разделитель. Конечный пустой элемент поступает из разделителя в конце строки.
> SELECT split('oneAtwoBthreeC', '[ABC]');
[one,two,three,]
Разделение строки с разделим запятыми
> SELECT split('apple,banana,cherry', ',');
[apple,banana,cherry]
Разделение на один или несколько символов пробелов
Используйте так \s+ , чтобы выполнение пробелов или вкладок действовало в качестве одного разделителя.
> SELECT split('the quick brown', r'\s+');
[the,quick,brown]
Ограничение количества элементов
Если limit значение больше 0, конечный элемент содержит оставшуюся часть строки.
> SELECT split('oneAtwoBthreeC', '[ABC]', 2);
[one,twoBthreeC]
> SELECT split('oneAtwoBthreeC', '[ABC]', -1);
[one,two,three,]
Параметры сортировки влияют на сопоставление
Нижний регистр [abc] соответствует разделителям верхнего регистра только при нечувствительной сортировке регистра.
> SELECT split('oneAtwoBthreeC' COLLATE UTF8_BINARY, '[abc]');
[oneAtwoBthreeC]
> SELECT split('oneAtwoBthreeC' COLLATE UTF8_LCASE, '[abc]');
[one,two,three,]