"striptags"と "removetags:"を使用しようとしましたが、あまり動作しません。テキストは次のようなものです:djangoテンプレート(フィルタ)からhtmlタグを完全に削除するには?
bla, bla, bla <p style="margin-top: 10px; margin-right: 0px; ....
私がtruncatewordsでstriptagsまたはremovetagsを使用する場合、テンプレートは完全に分解されます。
"striptags"と "removetags:"を使用しようとしましたが、あまり動作しません。テキストは次のようなものです:djangoテンプレート(フィルタ)からhtmlタグを完全に削除するには?
bla, bla, bla <p style="margin-top: 10px; margin-right: 0px; ....
私がtruncatewordsでstriptagsまたはremovetagsを使用する場合、テンプレートは完全に分解されます。
最初に文字列を消去してから、切り捨てる単語を使用する必要があります。strip_tagsが正しく動作していない場合、正規表現を使用してタグを消去できます。
import re
string = "<a href=''>abc</a>"
string = re.sub("<\!?\\\\?\/?\w+[^>]*>", "", string)
この正規表現は、すべてのタグの開閉タグ、コメントタグを消去します。これは簡単な解法ですが、正規表現を厳密にすることができます。 \ w +の代わりに(?:td | span | div ...など)を使用して、クリーニングするタグを指定することができます。
テキストを切り捨てる前にタグを削除するか、HTML対応のtruncatewords_html
を使用してください。そうでない場合は、破損したデータを操作しています。