删除空段落

时间:2011-06-17 10:01:36

标签: ruby-on-rails ruby-on-rails-3

我正在导入一个RSS源,其中包含一系列空段“<p> </p>”。

我正在使用gsub但是它没有剥离文档中的元素:

document.gsub(/<p>\s*<\/p>/,"")gsub(/<p> <\/p>/,"")

上面有替代方法或错误吗?

以下似乎有用吗?

gsub(/<p>.<\/p>/,"")

2 个答案:

答案 0 :(得分:5)

正确的正则表达式,例如:

>> document = "<p>\n\n\n   \n</p>aaa<p>  </p>bbb"                       
=> "<p>\n\n\n   \n</p>aaa<p>  </p>bbb"                                  
>> document.gsub(/<p>[\s$]*<\/p>/, '')                                  
=> "aaabbb"    

答案 1 :(得分:0)

如果RSS Feed中的段落元素使用idclasses,请尝试this

gsub(/\<p(\s((class)|(id))=[\'\"][A-z0-9\s]+[\'\"]\s*)*\>\s*\<\/p\>/,"")