Spec-Zone.ru › Nushell

match для core

Условно выполняет блок для совпавшего значения.

Сигнатура

> match {flags} (value) (match_block)

Параметры

  • value: Значение для проверки.
  • match_block: Блок, который выполняется при успешной проверке.

Типы входных и выходных данных:

входные данные выходные данные
any any

Примеры

Сопоставление со значением.

> match 3 { 1 => 'one', 2 => 'two', 3 => 'three' }
three

Сопоставление с альтернативными значениями.

> match 'three' { 1 | 'one' => '-', 2 | 'two' => '--', 3 | 'three' => '---' }
---

Сопоставление со значением из диапазона.

> match 3 { 1..10 => 'yes!' }
yes!

Сопоставление с полем в записи.

> match {a: 100} { {a: $my_value} => { $my_value } }
100

Сопоставление с универсальным шаблоном.

> match 3 { 1 => { 'yes!' }, _ => { 'no!' } }
no!

Сопоставление со списком.

> match [1, 2, 3] { [$a, $b, $c] => { $a + $b + $c }, _ => 0 }
6

Сопоставление с входными данными конвейера.

> {a: {b: 3}} | match $in {{a: { $b }} => ($b + 10) }
13

Сопоставление с условием.

> match [1 2 3] {
        [$x, ..$y] if $x == 1 => { 'good list' },
        _ => { 'not a very good list' }
    }

good list

Примечания

Эта команда является ключевым словом парсера. Подробности см. в разделе: https://www.nushell.sh/book/thinking_in_nu.html

Copyright © 2019–2026 The Nushell Project DevelopersLicensed under the MIT License.
https://www.nushell.sh/commands/docs/match.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API