【问题标题】:Is it possible to edit a Here document after creating it?是否可以在创建 Here 文档后对其进行编辑?
【发布时间】:2010-11-28 20:48:48
【问题描述】:

如果我创建一个 Here 文档:

myheredoc = <<HTMLOUTPUT
<div>This is the div</div>
HTMLOUTPUT

我可以使用 'myheredoc' 像普通字符串一样操作这个 Here 文档吗?

【问题讨论】:

    标签: ruby heredoc


    【解决方案1】:

    当然可以。语法是为了更容易阅读,你仍然只是创建一个字符串。

    >> myheredoc = <<HTMLOUTPUT
    <div>This is the div</div>
    HTMLOUTPUT
    => "<div>This is the div</div>\n"
    >> myheredoc << "<p>some paragraph</p>"
    => "<div>This is the div</div>\n<p>some paragraph</p>"
    

    【讨论】:

      【解决方案2】:

      heredoc 只是一种生成字符串的语法。因此,您可以使用所有标准字符串方法。例如:

      replaceddoc = myheredoc.gsub(/div/, 'replaced div')
      

      【讨论】:

        【解决方案3】:

        有多种声明字符串的方法:

        • 未转义:'foo' 或 %q[foo] 或 here-doc 样式
        • 转义:"foo" 或 %Q[foo] 或 here-doc 样式

        在所有情况下,字符串都是可编辑的,而不是冻结的,所以是的,它们可以在事后修改。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-03-31
          • 1970-01-01
          • 2021-03-11
          • 1970-01-01
          • 2012-03-21
          相关资源
          最近更新 更多