Edited at

String#*の引数を「0」にすると「""」になる( 例:"foobar" * 0 # => "" )ので遊んでみた。

More than 5 years have passed since last update.

# coding: UTF-8

# 1.nth毎の項目を「""」に変換する
# 例1:DATAから「"----------"」の行(3行毎に存在)を削除する
# 結果:
# => あいうえお
# => かきくけこ
# => さしすせそ
# => たちつてと
# => なにぬねの
# => はひふへほ
# => まみむめも
# => や ゆ よ
# => らりるれろ
# => わ   を
# => ん    

nth = 3
puts data = DATA.lines.map.with_index(1){ |e,i| e * ( i%nth <=> 0 ) }.reject(&:empty?)

# 2.nth毎以外の項目を「""」に変換する
# 例2:例1の結果からひらがなポスターを作る
# 結果:
# => んわらやまはなたさかあ
# =>   り みひにちしきい
# =>   るゆむふぬつすくう
# =>   れ めへねてせけえ
# =>  をろよもほのとそこお

data = data.map(&:chomp).join.chars

nth = 5
puts 1.upto(nth).map { |n|
data.map.with_index(n){ |e,i| e * ( ( 0 <=> i%nth ) + 1 )}.reverse.join
}.reverse

__END__
あいうえお
かきくけこ
----------
さしすせそ
たちつてと
----------
なにぬねの
はひふへほ
----------
まみむめも
や ゆ よ
----------
らりるれろ
わ   を
----------
ん