diff --git a/src/ch18-03-pattern-syntax.md b/src/ch18-03-pattern-syntax.md index f43b4aeb0..da3d46d82 100644 --- a/src/ch18-03-pattern-syntax.md +++ b/src/ch18-03-pattern-syntax.md @@ -196,18 +196,18 @@ This code prints `one or two`. このコードは、`one or two`を出力します。 -### `...`で値の範囲に合致させる +### `..=`で値の範囲に合致させる -`...`記法により、限度値を含む値の範囲にマッチさせることができます。以下のコードでは、 +`..=`記法により、限度値を含む値の範囲にマッチさせることができます。以下のコードでは、 パターンが範囲内のどれかの値に合致すると、そのアームが実行されます: ```rust @@ -215,7 +215,7 @@ let x = 5; match x { // 1から5まで - 1 ... 5 => println!("one through five"), + 1..=5 => println!("one through five"), // それ以外 _ => println!("something else"), } @@ -223,14 +223,14 @@ match x { `x`が1、2、3、4か5なら、最初のアームが合致します。この記法は、`|`演算子を使用して同じ考えを表現するより便利です; -`1 ... 5`ではなく、`|`を使用したら、`1 | 2 | 3 | 4 | 5`と指定しなければならないでしょう。 +`1..=5`ではなく、`|`を使用したら、`1 | 2 | 3 | 4 | 5`と指定しなければならないでしょう。 範囲を指定する方が遥かに短いのです。特に1から1000までの値と合致させたいとかなら! *at*演算子(`@`)により、値を保持する変数を生成するのと同時にその値がパターンに一致するかを調べることができます。 -リスト18-32は、`Message::Hello`の`id`フィールドが範囲`3...7`にあるかを確かめたいという例です。 +リスト18-32は、`Message::Hello`の`id`フィールドが範囲`3..=7`にあるかを確かめたいという例です。 しかし、アームに紐づいたコードで使用できるように変数`id_variable`に値を束縛もしたいです。この変数をフィールドと同じ、 `id`と名付けることもできますが、この例では異なる名前にします。 @@ -1563,11 +1563,11 @@ enum Message { let msg = Message::Hello { id: 5 }; match msg { - Message::Hello { id: id_variable @ 3...7 } => { + Message::Hello { id: id_variable @ 3..=7 } => { // 範囲内のidが見つかりました: {} println!("Found an id in range: {}", id_variable) }, - Message::Hello { id: 10...12 } => { + Message::Hello { id: 10..=12 } => { // 別の範囲内のidが見つかりました println!("Found an id in another range") }, @@ -1587,11 +1587,11 @@ while also testing it -この例は、`Found an id in range: 5`と出力します。範囲`3...7`の前に`id_variable @`と指定することで、 +この例は、`Found an id in range: 5`と出力します。範囲`3..=7`の前に`id_variable @`と指定することで、 値が範囲パターンに一致することを確認しつつ、範囲にマッチしたどんな値も捕捉しています。