Wenn Sie einen großen Textblock zu schreiben können Sie verwenden, um ein „hier Dokument“ oder „heredoc“:
expected_result = <<HEREDOC
This would contain specially formatted text.
That might span many lines
HEREDOC
Die heredoc auf die beginnen Linie folgende < < HEREDOC und endet mit der nächste Zeile, die mit HEREDOC beginnt. Das Ergebnis enthält die Endung newline.
Sie können einen beliebigen Bezeichner mit einem heredoc verwenden, aber typischerweise werden Bezeichner nur in Großbuchstaben verwendet.
Sie können die Endekennung einrücken, wenn Sie einen Platz „-“ nach < <:
expected_result = <<-INDENTED_HEREDOC
This would contain specially formatted text.
That might span many lines
INDENTED_HEREDOC
Beachten Sie, dass die während der Schließ Kennung eingerückt werden kann, der Inhalt immer so behandelt, wenn sie bündig links. Wenn Sie den Inhalt einrücken, erscheinen diese Leerzeichen in der Ausgabe.
Diese Funktion hat doc genannt wird. Es ist eine Möglichkeit, mehrzeilige Strings zu definieren. Das Ergebnis enthält alle ** Zeilen ** zwischen '<< - TPL' und' TPL'. 'gsub (/^\ s + /, '')' wird auf diese Zeichenkette angewendet. – sschmeck
@ Jordan: Was ist der Unterschied zwischen 'duplicate' und' that loaded my problem' Tags? – InQusitive