Rubyで%%%%%%%%%%%%%%%を実行すると空文字列("")が得られる。 ちなみに%の数は15個。 他の数のときは? %を1つずつ増やしてevalさせてみると、最初は3つの時に空文字列を得られた。 以降は4ずつ増えたときにも得られる。 数が違うとSyntaxError。 def eval_p(n) eval "%" * n rescue SyntaxError end (1..100).select{|n| eval_p n } #=> [3, 7, 11, 15, 19, 23, 27, 31, 35, 39, 43, 47, 51, 55, 59, 63, 67, 71, 75, 79, 83, 87, 91, 95, 99] # 最初だけ3、以降は4ずつ増えてる (1..100).map{|n| eval_p n }.compact #=> ["", "", "", "",