【问题标题】:Ruby on Rails pull an id from url, insert into image_tag (gsub?)Ruby on Rails 从 url 中提取一个 id,插入到 image_tag(gsub?)
【发布时间】:2011-05-25 04:16:00
【问题描述】:

我有一个 twitter 提要在页面上显示我的推文。我也想包括我的 twitpic 图像的缩略图。我一直在使用 gsub 替换文本,但我很难弄清楚语法。

带有原始标签的典型“twitpic tweet”输出如下所示:

This is a tweet with an image. http://twitpic.com/12345

那么图片的链接就是

http://twitpic.com/show/thumb/12345.jpg

这是显示文本的简单代码:

<% @tweets.each do |tweet| %>
  <li>
    <%= raw tweet.text %>
  </li>
<% end %>

所以我一直在尝试使用 gsub,但我被卡住了。

我可以通过 /http:\/\/twitpic.com?[^]+ 搜索 http://twitpic.com/*,然后用 url 取出所有内容,将其替换为原始 html,但如果我这样做也无济于事想链接一张图片。

如果我可以提取 twitpic id (http://twitpic.com/12345),我可以将 12345 放入一个辅助方法中,该方法输入一个字符串并将其插入到链接图像中。

如果有人能给我一些关于如何提取此 ID 的见解,将不胜感激。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 twitter gsub twitpic


    【解决方案1】:

    也许您可以使用#split 代替正则表达式?

    "This is a tweet with an image. http://twitpic.com/12345".split("http://twitpic.com/")[1]
    

    【讨论】:

    【解决方案2】:

    如果您想从http://twitpic.com/show/thumb/12345.jpg 中提取 id,请尝试使用以下方法从中获取 id:

    "http://twitpic.com/show/thumb/12345.jpg".scan(/^http:\/\/twitpic.com\/show\/thumb\/(\d+).jpg$/).flatten.first
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多