トラック
/
Rust
Rust
/
演習
/
連続部分文字列
連続部分文字列

連続部分文字列

初級

説明

数字の文字列が与えられたとき、その文字列の中にある長さnの連続した部分文字列を、現れる順にすべて出力します。

たとえば、文字列"49142"には、次の3桁の並びがあります。

  • "491"
  • "914"
  • "142"

また、次の4桁の並びもあります。

  • "4914"
  • "9142"

そして、5桁の文字列から6桁の並びを求めようとしたなら、何が返ってきても仕方ありません。

なお、これらの並びは、入力の中で_隣り合った位置_にあればよいだけで、数字が_数的に連続している_必要はありません。

エッジケースへの対応

Exercismの各言語では、部分文字列の長さが0だった場合にどんな結果を返すべきかについて、それぞれ異なる想定をしています。Rustのトラックにはそのケースのテストがないので、最も適切だと思う方法を自由に選んでください。

次のそれぞれについて、長所と短所を考えてみましょう。

  • panic!でプログラムをクラッシュさせる。
  • Result::Errを返す。(ここでは関数のシグネチャが与えられているので、これはできません)
  • 空のベクターを返す。
  • 文字列"digits"の長さに1を足した数だけ、空の文字列を含むベクターを返す。(これには数学的にきれいな性質があります!)
GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
Rust Exercism

連続部分文字列を始める準備はできましたか?

Exercismに登録すれば、99個の演習、そして本物の人間によるメンタリングとともに、Rustを学んでマスターできます。すべて無料です。