什么是< - Ruby字符串调用?我如何在其中插入变量?

fiv*_*six 3 ruby heredoc

<-- 似乎在网上无法搜索,所以不得不在这里提出问题.

它们的可搜索名称是什么,如何在线添加变量?

BF4*_*BF4 8

该语法用于声明此文档 http://www.ruby-doc.org/docs/ruby-doc-bundle/Manual/man-1.4/syntax.html#here_doc

有一种面向行的字符串文字形式,通常称为"here document".在<<之后,您可以指定字符串或标识符来终止字符串文字,并且当前行到终结符后面的所有行都是字符串的值.如果引用了终止符,则引号的类型决定了面向行的字符串文字的类型.注意<<和终结符之间必须没有空格.

如果 - 放置在分隔符之前,则从输入行和包含分隔符的行中删除所有前导的whitespcae字符(制表符或空格).这允许脚本中的文档以自然方式缩进.

关于插值,链接提供了更多细节,但如果你的字符串被分隔如下,它就像一个双引号字符串(忽略此页面的颜色格式)

<<-HERE
   I can interpolate #{foo}
HERE
Run Code Online (Sandbox Code Playgroud)

而它就像一个单引号字符串

<<-'HERE'
 This will print out #{foo} as text
HERE
Run Code Online (Sandbox Code Playgroud)

原来的镐也是一个很好的来源 http://www.ruby-doc.org/docs/ProgrammingRuby/html/language.html