0
私は単純なtxtファイルをよく読んでいます。しかし、私はタブが尊重されていないデータ行を取得しています。ruby - 行からのタブが尊重されていない
ファイル内の行の下にあります。
Anderson Silva R$10 off R$20 of food 10.0 2 987 Fake St Batman Inc
以下は、pryのアウトラインです。
私たちが見ることができるように、987とFake Stは同じ行にあります。
Anderson Silva
R$10 off R$20 of food
10.0
2
987 Fake St
Batman Inc
、ここで簡単なコード
line.split("\t").map do |col|
col = col.split("\t")
puts col
end
:
あなたは、このケースで貴重な
inspect
方法を見つけることができますタブの間にパーツの配列を含み、その配列を返します。その配列をマップすると、個々の要素にはタブが残っていない可能性があります。したがって、 'col = col.split(" \ t ")'は何を達成するはずですか?これは 'col = [col]'と事実上同じです。 – philomoryまた、 'puts'は' nil'を返し、 'map'ブロックの最後の式です。したがって、 'map'メソッドの戻り値は、' nil's( '[nil、nil、nil、nil、nil]'など)でいっぱいの配列になります。とにかく戻り値で何もしていないので、それは問題ではありませんが、その場合は@ordeのように 'each'を使うほうが良いでしょう。 – philomory