haml html属性中的正则表达式

是posibble有这样的东西? :

%div{"data-regex": "a/regular/expression"} 

当我尝试这样做时,我收到此错误:

 syntax error, unexpected ':', expecting tASSOC 

我试过这个: %div{"data-regex": #{"a/regular/expression"}} ,但是是一样的。

您可能正在寻找的是:

 %div{data: {regex: "a/regular/expression"} } 

但是如果你在你的问题中包含所需的HTML会很好,所以我们可以肯定地知道。 提供的另一个答案也可以使用,但如果你想提供许多数据属性而不需要在所有地方重复“数据”,这一点就特别好了。 也就是说,你可以这样做:

 %div{data: {regex: "a/reg/ex", attr2: "something", attr3: "something else" } } 

请注意,您的问题是Ruby 1.9+中针对哈希中的符号键的漂亮语法不适用于冒号前面的字符串。

 { a: 123 } # => { :a => 123 } { :"a" => 123 } # => { :a => 123 } { "a" => 123 } # => { "a" => 123 } { "a": => 123 } # => SyntaxError ... 

为了确保它有效,您可以尝试通常的表单来编写参数哈希:

 %div{:'data-regex' => "a/regular/expression"} 

我想,这可能适用于ruby 2.x

 %div{"data-regex": "a/regular/expression"}