Ruby on rails RubyonRails从url中提取一个id,插入到图像标签(gsub?)
我有一个推特提要,在页面上显示我的推特。我也想包括我的twitpic图像的缩略图。我一直在使用gsub来替换文本,但我很难弄清楚语法 带有原始标记的典型“twitpic tweet”输出如下所示:Ruby on rails RubyonRails从url中提取一个id,插入到图像标签(gsub?),ruby-on-rails,ruby-on-rails-3,twitter,gsub,twitpic,Ruby On Rails,Ruby On Rails 3,Twitter,Gsub,Twitpic,我有一个推特提要,在页面上显示我的推特。我也想包括我的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|
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?[^]+搜索*by,然后用原始html替换url中的所有内容,但如果我想链接图像,这并没有帮助
如果我能提取twitpic id(http://twitpic.com/12345),我可以将12345放入一个助手方法,该方法输入一个字符串并将其插入链接图像
如果有人能告诉我如何提取此id,我将不胜感激。如果您想从
http://twitpic.com/show/thumb/12345.jpg
然后尝试从中提取id:
"http://twitpic.com/show/thumb/12345.jpg".scan(/^http:\/\/twitpic.com\/show\/thumb\/(\d+).jpg$/).flatten.first
也许你可以用#split代替正则表达式
"This is a tweet with an image. http://twitpic.com/12345".split("http://twitpic.com/")[1]
也许不是最优雅的解决方案,但它工作得非常出色:]+/{link_to image_标记(“{tweet.text.split(“}”,:border=>0),“{tweet.text.split(“}”}}%>