3

望ましい状況ではないことは理解していますが、JSON タグ内にある種の HTML が必要な場合は、次のようになります。

{
    "node":
    {
        "list":"<ul><li class="lists">Hello World</li><ul>"
    }
}

事前にエスケープする必要なく、Pythonでこれを行うことは可能ですか?

最初は文字列になるので、処理前にこれらを照合してエスケープする正規表現を書くことを考えていましたが、もっと簡単な方法がないことを確認したいだけです。

4

2 に答える 2

6

HTML がどの程度多様であるかにもよりますが、HTML で一重引用符をうまく使用できるので、次のようにできます。

{
    "node":
    {
        "list": "<ul><li class='lists'>Hello World</li><ul>"
    }
}

ただし、json モジュールsimplejsonとして Python 2.6 に組み込まれている を使用すると、必要なエスケープが自動的に行われます。

>>> import simplejson
>>> simplejson.dumps({'node': {'list': '<ul><li class="lists">Hello World</li><ul>'}})
'{"node": {"list": "<ul><li class=\\"lists\\">Hello World</li><ul>"}}'
于 2009-06-08T05:02:45.680 に答える
0

そこには、たまたま HTML タグを含むものを含め、任意の文字列を含めることができます (例の唯一の問題は、"パーサーを混乱させる内部です)。

于 2009-06-08T05:00:50.753 に答える