範囲内の文字を印刷するにはどうすればよいですか?
たとえば、「ruby」という単語がある場合、文字が a - h などの範囲内にある場合にのみ、文字を上下に印刷したいと考えています。
"ruby".chars.each do |x|
if ('a'..'h').include?(x)
print x
end
end
"ruby".each_char {|c| puts c if [*'a'..'h'].include? c}
puts 'ruby'.chars.select{|c| ('a'..'h').cover?(c)}.join("\n")
puts "rubyruby".chars.grep('a'..'h').join("\n")
これを行うには多くの方法があります。たとえば、
'ruby'.tr("^a-h",'')
また
'ruby'.gsub(/[^a-h]/,'')
tr
私はおそらく gsub を使用するでしょう - どの構文が理解できるかはまったく覚えていません