split list для фильтров
Разделяет список на несколько списков с помощью разделителя.
Сигнатура
> split list {flags} (separator)
Флаги
-
--regex, -r: Разделитель — регулярное выражение, которому соответствуют значения, преобразуемые в строку. -
--split {string}: Определяет, разделять ли списки перед разделителем, после него или по нему (по умолчанию).
Параметры
-
separator: Значение, обозначающее разделитель списка.
Типы входных и выходных данных:
| входные данные | выходные данные |
|---|---|
| list<any> | list<list<any>> |
Примеры
Разделить список символов на два списка.
> [a, b, c, d, e, f, g] | split list d ╭───┬───────────╮ │ 0 │ ╭───┬───╮ │ │ │ │ 0 │ a │ │ │ │ │ 1 │ b │ │ │ │ │ 2 │ c │ │ │ │ ╰───┴───╯ │ │ 1 │ ╭───┬───╮ │ │ │ │ 0 │ e │ │ │ │ │ 1 │ f │ │ │ │ │ 2 │ g │ │ │ │ ╰───┴───╯ │ ╰───┴───────────╯
Разделить список списков на два списка списков.
> [[1,2], [2,3], [3,4]] | split list [2,3] ╭───┬───────────────────╮ │ 0 │ ╭───┬───────────╮ │ │ │ │ 0 │ ╭───┬───╮ │ │ │ │ │ │ │ 0 │ 1 │ │ │ │ │ │ │ │ 1 │ 2 │ │ │ │ │ │ │ ╰───┴───╯ │ │ │ │ ╰───┴───────────╯ │ │ 1 │ ╭───┬───────────╮ │ │ │ │ 0 │ ╭───┬───╮ │ │ │ │ │ │ │ 0 │ 3 │ │ │ │ │ │ │ │ 1 │ 4 │ │ │ │ │ │ │ ╰───┴───╯ │ │ │ │ ╰───┴───────────╯ │ ╰───┴───────────────────╯
Разделить список символов на два списка.
> [a, b, c, d, a, e, f, g] | split list a ╭───┬────────────────╮ │ 0 │ [list 0 items] │ │ 1 │ ╭───┬───╮ │ │ │ │ 0 │ b │ │ │ │ │ 1 │ c │ │ │ │ │ 2 │ d │ │ │ │ ╰───┴───╯ │ │ 2 │ ╭───┬───╮ │ │ │ │ 0 │ e │ │ │ │ │ 1 │ f │ │ │ │ │ 2 │ g │ │ │ │ ╰───┴───╯ │ ╰───┴────────────────╯
Разделить список символов на списки по нескольким символам.
> [a, b, c, d, a, e, f, g] | split list --regex '(b|e)' ╭───┬───────────╮ │ 0 │ ╭───┬───╮ │ │ │ │ 0 │ a │ │ │ │ ╰───┴───╯ │ │ 1 │ ╭───┬───╮ │ │ │ │ 0 │ c │ │ │ │ │ 1 │ d │ │ │ │ │ 2 │ a │ │ │ │ ╰───┴───╯ │ │ 2 │ ╭───┬───╮ │ │ │ │ 0 │ f │ │ │ │ │ 1 │ g │ │ │ │ ╰───┴───╯ │ ╰───┴───────────╯
Разделить список чисел по числам, кратным 3.
> [1 2 3 4 5 6 7 8 9 10] | split list {|e| $e mod 3 == 0 }
╭───┬────────────╮
│ 0 │ ╭───┬───╮ │
│ │ │ 0 │ 1 │ │
│ │ │ 1 │ 2 │ │
│ │ ╰───┴───╯ │
│ 1 │ ╭───┬───╮ │
│ │ │ 0 │ 4 │ │
│ │ │ 1 │ 5 │ │
│ │ ╰───┴───╯ │
│ 2 │ ╭───┬───╮ │
│ │ │ 0 │ 7 │ │
│ │ │ 1 │ 8 │ │
│ │ ╰───┴───╯ │
│ 3 │ ╭───┬────╮ │
│ │ │ 0 │ 10 │ │
│ │ ╰───┴────╯ │
╰───┴────────────╯
Разделить список чисел на списки, заканчивающиеся на 0.
> [1 2 0 3 4 5 0 6 0 0 7] | split list --split after 0 ╭───┬───────────╮ │ 0 │ ╭───┬───╮ │ │ │ │ 0 │ 1 │ │ │ │ │ 1 │ 2 │ │ │ │ │ 2 │ 0 │ │ │ │ ╰───┴───╯ │ │ 1 │ ╭───┬───╮ │ │ │ │ 0 │ 3 │ │ │ │ │ 1 │ 4 │ │ │ │ │ 2 │ 5 │ │ │ │ │ 3 │ 0 │ │ │ │ ╰───┴───╯ │ │ 2 │ ╭───┬───╮ │ │ │ │ 0 │ 6 │ │ │ │ │ 1 │ 0 │ │ │ │ ╰───┴───╯ │ │ 3 │ ╭───┬───╮ │ │ │ │ 0 │ 0 │ │ │ │ ╰───┴───╯ │ │ 4 │ ╭───┬───╮ │ │ │ │ 0 │ 7 │ │ │ │ ╰───┴───╯ │ ╰───┴───────────╯
Copyright © 2019–2026 The Nushell Project DevelopersLicensed under the MIT License.
https://www.nushell.sh/commands/docs/split_list.html