2

非常に長い文字列を含む変数 'text' が Python にあります。そして、キーが単語/単語のグループであり、値がURLであるdictがあります。Djangoを使用してこの変数「テキスト」を表示し、dictにもあるテキストからすべての単語/単語グループのハイパーリンクを作成する必要があります。リンクはすでに辞書に値として保存されています。

text = "タージ・マハルはインドにあります"

my_dict = { 'タージ マハル':'url1', 'インド':'url2' }

django を使用してこのテキストを表示します。「タージ マハル」と「インド」は、それぞれ url1 と url2 へのハイパーリンクです。urlize を使用しようとしましたが、問題は解決しませんでした。

4

1 に答える 1

3

変数replace()で使用できます:text

>>> text = "taj mahal is in india"
>>> my_dict = { 'taj mahal':'url1', 'india':'url2' }
>>> for key, value in my_dict.iteritems():
...     text = text.replace(key, value)
... 
>>> text
'url1 is in url2'

また:

>>> text = "taj mahal is in india"
>>> for key, value in my_dict.iteritems():
...     text = text.replace(key, '<a href="%s">key</a>' % value)
... 
>>> text
'<a href="url1">key</a> is in <a href="url2">key</a>'

textこの変数をテンプレートに渡したい場合は、safeフィルターを適用します。

{{text|safe}}

それが役立つことを願っています。

于 2013-07-29T11:03:55.400 に答える