GithubのGoogle Ruby APIクライアントでこのコードを見つけました。珍しいRubyの構文<< ABC - それは何を達成するのですか?
NOT_FOUND_ERROR = <<END
Could not load the default credentials. Browse to
https://developers.google.com/accounts/docs/application-default-credentials
for more information
END
私はそれを見ていないし、コンソールでそれをテストしない:
>> NOT_FOUND_ERROR = <<END
blabla
END
=> "blabla\n"
だから、基本的には文字列を作成する奇妙な方法は何ですか? NOT_FOUND_ERROR = "blabla\n"
ではなく、この構文を使用する動機は何ですか?
編集:この質問に「重複の可能性があります」とマークされているので、私はそれが単なるダブではない理由を説明したいと思います。可能な複製であるという質問は、単に特定のルビスクリプトが何をしているのかを尋ねるだけです。このRubyスクリプトには<<ABC
という構文も含まれていますが、これは明らかに質問の中核ですが、見つけるのは難しいため実際には役に立ちません。それ以外に、私はさらに進んで、通常の文字列を作成するよりもこの表記法を使用する動機を尋ねます。
ありがとうございます! – Flip
複数行の文字列には、一重引用符、二重引用符、%q、%Qを使用することもできます。 –