0

simple_format(@company.description) を使用して、テキストをいくつかの段落にしています。あるページで、最初の 3 つの段落だけを表示したいとします。ここで役立つ気の利いたルビーの方法はありますか、それとも非常に時代遅れの正規表現スキルを読む必要がありますか。

乾杯カール

4

2 に答える 2

0

truncate ヘルパー メソッドは、オプションの:separator. simple_format は<br />タグを使用して段落を示すため、次のようなことができるはずです。

truncate(simple_format(@company.description), length: 3, separator: '<br />')
于 2012-12-03T23:01:31.077 に答える
-2

個人的には、フォーマッタに入れる前にテキストを丸めます。テキストに \r\n または \n があると思います。必要なのは最初の 3 段落だけなのに、なぜ 1000 段落をフォーマットするのか。

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

確かに機能ですが、速度が重要な場合は最速の方法です。(それは常にです、常に!):)

于 2012-12-03T23:36:16.537 に答える