2012-12-03 52 views
0

我使用simple_format(@ company.description)將文本製作成多個段落。在一頁上,我只想說,前三段。是否有任何漂亮的紅寶石方法可以幫助我,或者我應該閱讀我的正則表達式技巧,這些技巧已經過時了。只顯示前兩個段落。 Ruby on Rails

乾杯卡爾

回答

0

truncate helper method的接受一個可選:separator。由於simple_format使用<br />標記,以表明段落,你應該能夠做這樣的事情:

truncate(simple_format(@company.description), length: 3, separator: '<br />') 
-2

個人而言,我把它變成一個格式化之前一輪的文本。我假設你的文字中有\ r \ n或\ n。爲什麼格式1000個段落,如果你需要的是第3

def get_first_paragraphs(text, desired = 3) 
    text.each_with_index do |character, index| 
     if(character == "\n") 
     desiredParCount -= 1 
     return text[0..index] if(desiredParCount <= 0) 
     end 
    end 
    return text; 
end 

這是肯定的功能,但它是最快的方法。如果速度是很重要的。 (它總是,總是!):)