在Rails中,我将slim转换为erb,得到了太多无用的文本
<tr class="highlight">
<td><%= ::Temple::Utils.escape_html((cloud_file.name)) %>
</td><td>
<div class="input-append">
<%= ::Temple::Utils.escape_html((text_field_tag '', cloud_file.asset.url, :class => :span4)) %>
<%= ::Temple::Utils.escape_html((link_to 'check', cloud_file.asset.url, :target => :_blank, :class => :btn)) %>
</div></td><td><%= ::Temple::Utils.escape_html((number_to_human_size(cloud_file.file_size))) %>
</td><td><%= ::Temple::Utils.escape_html((cloud_file.content_type)) %>
</td><td>
<%= ::Temple::Utils.escape_html((admin_delete_button(cloud_file))) %>
</td></tr>
::Temple::Utils.escape_html((cloud_file.content_type))
::Temple::Utils.escape_html((l))
我只想删除::Temple::Utils.escape_html((...))
并将文字保留在括号((...))
之间。例如( “cloud_file.name”)
这是我的正则表达式,不行。
::Temple::Utils.escape_html\({2}(?<=[^.*])\){2}
怎么修好了? THX
答案 0 :(得分:1)
我建议:
gsub(/::Temple::Utils\.escape_html\({2}(.*?)\){2}/m, '\1')
您使用了lookbehind (?<=[^.*])
而不是消费子模式.*?
。您可以调整模式和替换模式以包括一组括号或在捕获组#1的两端添加引号(使用(...)
捕获的部分)。