作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在尝试将自定义方法与 here-doc 一起使用,并希望传递参数(没有业务案例,我只是想学习 ruby)。在这种情况下有没有办法传递参数?这是我目前所拥有的。
方法简单,效果很好。
def meth1
self.upcase
end
str1 = <<MY.meth1
i am a small case string
MY
# "I AM A SMALL CASE STRING\n"
现在,我想让我们放弃一些参数并尝试不同的变体,irb 给了我一个茫然的眼神。
#variation 1
def meth2( <<EOF1, <<EOF2 )
EOF1.upcase + "..." + EOF2.downcase
end
str2 = <<MY.meth2
some string
EOF1
ANOTHER STRING
EOF2
MY
最佳答案
我猜这就是您要尝试做的:
def meth2(str1, str2)
str1.upcase + "..." + str2.downcase
end
str2 = meth2(<<EOF1, <<EOF2)
some string
EOF1
ANOTHER STRING
EOF2
str2 # => " SOME STRING\n... another string\n"
如果您不想缩进,请参阅 here . ← 看到我的文字游戏了吗?
关于Ruby HERE-DOC方法参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16832162/
我是一名优秀的程序员,十分优秀!