ポインタをリセットしていました。検出した時点で、テキストとパタンがどこまで一致しているかが分かっていることを有効に利用します。いうことが既に分かっているのです(下図参照)。具体的な例をいくつか見てみましょう。いうことが既に分かっています。後戻りさせるのは明らかに無駄な処理を発生させます。してパタンのチェックを再開することができます。いうことが既に分かっています。後戻りさせるのは無駄になります。いう事実、つまりパタンを見逃してしまいます。1つしか後戻りさせなかったら、パタンを見逃してしまうことを意味します。2)、チェックを再開することが正しいのです。して記録しておき有効利用します。照合の処理をする前にあらかじめ計算しておくことができます。このパタンをあるテキストと照合してみましょう。後戻りさせ照合を再開すればよいことになります。位置から再開することができます。どこから再開するか」と表現した方が直感的に分かりやすいと思います。