В PHP следующее позволило бы мне создавать строку, не имея необходимость выходить из кавычек..
$string = <<<EOD
',. whatever <"",'
EOD;
echo $string;
Действительно ли там что-нибудь подобно ему в Ruby/направляющих?
Heredoc-файлы Ruby почти такие же, с небольшими изменениями, и бывают двух разновидностей:
1) Конец-heredoc должен быть в начале строки:
string = <<EOD
',. whatever <"",'
EOD
puts string
2) Конец heredoc может предшествовать пробелу:
string = <<-EOD
',. whatever <"",'
EOD
puts string
Ruby поддерживает многострочные строки, предоставляя два типа синтаксиса here doc. Первый синтаксис использует дополнительный дефис, но позволяет сделать отступ для разделителя «конец документа» (в примере - «eos»).
<<-eos
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud
exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute
irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia
deserunt mollit anim id est laborum.
eos
Другой синтаксис документа здесь не требует использования тире, но требует, чтобы разделитель «конец документа здесь» находился в столбце 1 (или перед ним не было пробелов).
<<eos
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud
exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute
irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia
deserunt mollit anim id est laborum.
eos
Здесь называется документ . По ссылке рубиновый путь будет выглядеть так:
puts <<-GROCERY_LIST
Grocery list
------------
1. Salad mix.
2. Strawberries.*
3. Cereal.
4. Milk.*
* Organic
GROCERY_LIST
Результат:
$ ruby grocery-list.rb
Grocery list
------------
1. Salad mix.
2. Strawberries.*
3. Cereal.
4. Milk.*
* Organic
вы можете сделать это так
string = <<EOD
',. whatever <"",'
EOD
puts string