p header_names
- почему не печатается массив header_names?
У вас есть возврат верхнего уровня , то есть return
вне метода. Когда Ruby встречает эту строку, он останавливает оценку сценария, и программа молча завершается. Это примерно эквивалентно:
DATA.each_line { |e|
if e =~ /\|/
exit # <- if the program exits here
end #
} #
p header_names # <- this line won't be reached
Может быть, вы хотели find
первая строка, содержащая |
:
header_names = DATA.find { |e| e =~ /\|/ }
p header_names
который напечатает:
"|A|B|C|\n"