【问题标题】:Add div outer of an image tag with ruby gsub or jquery使用 ruby​​ gsub 或 jquery 在图像标签的外部添加 div
【发布时间】:2011-11-27 17:40:11
【问题描述】:

我有一个包含多个 <image> 标记的 HTML 字符串。我想搜索每个标签并用div 标签包装它们。

例如:

mplampla<img src="somethin.jpg" />mplampal

应该是:

mplampla<div class=""><img src="something" /></div>mplamla

如何在 Ruby on Rails 中使用 Regex 来做到这一点?

【问题讨论】:

    标签: ruby-on-rails ruby regex


    【解决方案1】:

    这是jquery解决方案

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
    <script type="text/javascript">
    $(document).ready(function(){
        $('.image').wrap('<div class="">');
    });
    </script>
    <img class="image" src="img.jpg" />
    <img class="image" src="img.jpg" />
    <img class="image" src="img.jpg" />
    <img class="image" src="img.jpg" />
    

    【讨论】:

      【解决方案2】:

      如果我正确理解您的需求:

      foo = 'mplampla<img src="somethin.jpg" />mplampal'
      re = re = /(?<img><img .*? \/>)/
      foo.gsub re, '<div>\k<img></div>'
      # => "mplampla<div><img src=\"somethin.jpg\" /></div>mplampal"
      

      这里我们使用命名捕获组,使用 \k 命名反向引用语法:(?&lt;img&gt;...) 创建命名组,\k&lt;img&gt; 使用反向引用。

      更新

      我们还必须使用非贪婪量词 - 谢谢@mu! - 用于使用嵌套标签

      【讨论】:

      • 糟糕,您说的完全正确,非常感谢!!现在尝试使用非贪婪匹配:)
      猜你喜欢
      • 2010-10-30
      • 1970-01-01
      • 1970-01-01
      • 2012-10-09
      • 1970-01-01
      • 2014-10-11
      • 1970-01-01
      • 2015-09-17
      • 2023-03-19
      相关资源
      最近更新 更多