查找并替换一个文本块

时间:2010-03-20 07:38:55

标签: ruby-on-rails ruby

我的数据库中包含如下所示的文本字段:

(paragraph of normal text)

image:blog/clownboy.jpg

(another paragraph)

我正在尝试为Rails编写一个视图帮助程序,它将采用这些大块文本中的一个,找到像“image:blog / clownboy.jpg”这样的内容,并用相应的<img src="blog/clownboy.jpg">替换它们(没有在将其输出给用户之前扰乱周围的空白。我现在已经尝试了一个小时左右,但我是Ruby新手,正则表达式仍然有点超出我的范围。

2 个答案:

答案 0 :(得分:3)

使用image: xyz

在单独一行上对<img src='xyz'/>进行全局替换
text.gsub!(/^image:(.+)$/) { "<img src='#{$1}'/>" }

答案 1 :(得分:1)

您使用的数据库是什么?您可能希望在查询级别上执行此替换...

REPLACE功能可以使用,你可以在MySQL,SQL Server等中使用它。

SELECT REPLACE('abcdefghicde','cde','xxx');

http://www.electrictoolbox.com/mysql-select-replace/

http://msdn.microsoft.com/en-us/library/ms186862.aspx