ここに私の問題があります:私は2つのアレイを持っています。1つは文字配列で、スライディングウィンドウを表します。文字は最初からシフトされ、最後にプッシュされます。2番目の配列を使用して、文字が移動するときに文字を「追跡」する配列スライスへの参照を格納したいと思います。例:
my @char_array = ('h','e','l','l','o','w','o','r','l','d');
my $char_arr_ref=[@char_array[1..$#char_array]];
print @$char_arr_ref, "\n"; # slice contains 'elloworld';
shift(@char_array);
push(@char_array), 'x';
print @$char_arr_ref, "\n"; # slice still contains 'elloworld', not 'lloworldx' as I need;
言い換えると、配列スライスへの参照を持つ2番目の配列を使用できるようにしたいと思います(たとえば、Cのポインター配列で行うように)。
Perlでこれを行う慣用的な方法はありますか?
更新:これは、高速テキスト検索を実行するためのより大きなプログラムの一部です。私は参照のハッシュを使用するつもりでした(たとえば、非常に遅い「index」関数の代わりに。そして、Perlでこれを行う必要があります。