2011-07-26 10 views
3

テキスタイルの書式設定されたテキストである本文があります。私はsphinxで全文検索を行い、検索結果を強調表示したい。スフィンクスは私がすべてのテキスタイルフォーマットを削除するが、ハイライトタグを保存し、このRuby、Textile:タグとテキスタイルフォーマットなしでプレーンテキストを取得する方法

A simple <span class="highlight">example</span>. 

ようにしたい、この

A *simple* _<span class="highlight">example</span>_. 

のようなものを与えるRedcloth宝石を持つことが可能ですか?

+1

あなたは解決策を見つけるでしょうか? – nelsonvarela

答えて

3

RedClothでコンテンツを処理し、すべてのタグの結果を削除することができます。だから、のようなもの:

strip_tags (RedCloth.new(simple_input).to_html) 

strip_tagsはActionView ::ヘルパー:: TextHelperモジュールで利用可能です。詳細についてはhttp://apidock.com/rails/ActionView/Helpers/TextHelper/strip_tagsをご覧ください。

+0

残念ながら、strip_tagsは特別なタグを保存しません – petRUShka

+0

このメソッドは、あなたが与えたヘルパーで非難されており、現在http://apidock.com/rails/ActionView/Helpers/SanitizeHelper/strip_tagsにあります –

0

まだスフィンクスと仕事をしていませんが、あなたの質問から判断すると、スフィンクスが検索結果としてテキストを出力すると<span class="highlight">..</span>が追加されたようです。

私は現在RedClothのメソッドを認識していませんが、Vidibus-Textile Gem(RedClothベース)はto_textメソッドを追加しています。

Ofcあなたはの前にspanタグを追加する前に呼び出されていることを確認する必要があります。

+0

また、カスタム入力パターン(http://redcloth.org/faqを参照)がオプションになる可能性があります。 ' ..'を処理するテキスタイルパターンとして考えるのは汚れているように思えますが:) – user569825

関連する問題