ブロック内で使用したい if 条件に問題があります。より正確には、配列から文字列を取得し、その文字列を変更して、特定の条件が満たされた場合に配列に保存したいと考えています。
文字列で構成される「leuchtturmgesamtheit」という配列があります。これらの文字列のほとんどは次のようになります。
ACH-92941100
ACH-92941102
私の目的は、これら 2 つの文字列を集約することです。そのため、文字列の名前を変更して、同じ名前になるようにします。そのためには、最後の文字を切り取りたいです。その後、uniqを使用できます!アレイ上。
これが私がしたことです:
leuchtturmgesamtheit.each { |replace|
if replace.count("1234567890")==8
replace=replace[0...-1]
end
}
leuchtturmgesamtheit.uniq!
print leuchtturmgesamtheit
私は得ると思っていました:
ACH-9294110
しかし、代わりに同じ 2 つの文字列が返されます。
RubyMine は、太字でマークされた「replace」が代入後に使用されないローカル変数であることを示しています。したがって、問題はブロック内の if 条件にあるようです。私は何を間違えましたか?