Паттерн ..
Паттерн .. представляет собой оператор диапазона,
который используется в шаблонах сопоставления для проверки
попадания значения в определённый интервал. Он может
применяться как в конструкциях match, так и в
if let и while let. Паттерн принимает
начальное и конечное значения диапазона, которые указываются
через .., например 1..=5 для включительного
диапазона или 1..5 для исключительного.
Синтаксис
start..end
start..=end
Пример
Давайте проверим, входит ли число 3 в диапазон
от 1 до 5 включительно:
fn main()
{
let num = 3;
let res = match num
{
1..=5 => "in range",
_ => "out of range",
};
println!("{}", res);
}
Результат выполнения кода:
"in range"
Пример
Давайте проверим, входит ли число 7 в диапазон
от 1 до 5 включительно:
fn main()
{
let num = 7;
let res = match num
{
1..=5 => "in range",
_ => "out of range",
};
println!("{}", res);
}
Результат выполнения кода:
"out of range"
Пример
Давайте проверим работу исключительного диапазона
от 1 до 5 для числа 5:
fn main()
{
let num = 5;
let res = match num
{
1..5 => "in range",
_ => "out of range",
};
println!("{}", res);
}
Результат выполнения кода:
"out of range"
Пример
Давайте используем паттерн .. с символьными
значениями в конструкции if let:
fn main()
{
let ch = 'c';
if let 'a'..='e' = ch
{
println!("letter in range");
}
else
{
println!("letter out of range");
}
}
Результат выполнения кода:
"letter in range"