2010-11-30 13 views
2

私はRuby on Rails 2.3.8で作業しています。ユーザーが投稿するウェブサイトがあります。それぞれには、メインページに表示される簡単な説明があります。その説明はオリジナルから自動的に作成されますが、切り捨てられて最大240文字に達します。htmlから画像と動画をプログラムで削除する

問題には画像や動画が含まれている可能性があり、これらの文字列を切り捨てると表示されないようにすることは問題です。私は、HTMLを解析するHpricotプラグインを使用していて、次の正規表現は、画像を解析する:これは、画像を削除して

body = Hpricot.parse(html_body) 
body = body.to_s.gsub(/<img .*?>/, '') 

、時にはそれは、「画像」または「IMG」と言い、たとえば、代わりに文字列を離れます画像は以前のものですたとえば、説明から画像を削除した後、ゆるやかな "スパム"テキストが残ります。正規表現が正しくない可能性があります。

誰かが画像を削除する正しい正規表現であることを知っていますか?

+0

なぜあなたのコンテンツにいくつかのHTMLを追加しないでください。あなたがしたいことを避けるためにいくつかのマルチgsubを行うことができた後。 – shingara

+0

何も避けてください。ユーザーに画像や動画を挿入してもらいたいのですが、ホームページの短い説明ではなく、投稿のページに表示する必要があります。 –

答えて

1

imgの空白のあるで検索しているようです。

<imgとすべてを含むが、>を含まないものをすべて取得してから、>を取得できるようにしますか?

ソース入力なしで動作するかどうかは分かりません。

<img([^>])+ 

注意:ネストされたタグでは機能しません。

関連する問題