Вы можете связать совпадения следующим образом:
let guess: u32 = match guess.trim().parse() {
Ok(num) => match guess.chars().count() {
1 | 2 => num,
_ => {
println!("Please type a number from 1 to 100.");
continue;
}
},
Err(_) => {
println!("Please type a number.");
continue;
},
};
Однако проверка длины строки - это не то, что вам действительно нужно.Например, «00023» анализирует «23», но имеет длину прочности 5. Поскольку у вас есть доступ к num
в этом контексте, вы можете напрямую сопоставить его значение!
// ...
Ok(num) => match num {
1..=100 => num,
_ => {
println!("Please type a number from 1 to 100.");
continue;
}
},
// ...