2011-11-13 14 views
0

可能性の重複: 解析不正な形式の文字列


Decode HTML entities in Python string?

は、私はPythonで不正な形式の文字列を持っている: 'にアポストロフィがある

Muhammad Ali's fight with Larry Holmes 

まず、これはどのような表現ですか?'?それは'

+3

これは、しかしそこにそれが簡単に解析し、 ')(' CHRを使用して組み立て直すためになるだろうコード39(と文字のHTMLエンティティのように見えます。あなたもおそらく考慮したいと思うだろう '&'( '&')のような記号的なHTMLエンティティの大きな数です。 – Kos

+0

@すべて:私は答えを探す方法を知らなかったサーチ。 – Bruce

答えて

5

Python標準ライブラリのとモハメド・アリの戦いHTMLParserは、文字列のHTMLエンティティをデコードすることができます。

>>> import HTMLParser 
>>> h = HTMLParser.HTMLParser() 
>>> s = h.unescape('© 2010') 
>>> s 
u'\xa9 2010' 
>>> print s 
© 2010 
>>> s = h.unescape('© 2010') 
>>> s 
u'\xa9 2010' 

ソリューションの範囲は、ここで説明されている:http://fredericiana.com/2010/10/08/decoding-html-entities-to-text-in-python/

1

&#CHAR-CODE;が(多分他の場所で、私はよく分からない)HTMLでの特殊文字のためsytaxあると'に取って代わるように、第二に、どのように私はPythonで文字列を解析することができます。そこにこれを行うには、より完全な方法かもしれないが、あなたが単にそれを置き換えることができます:

mystring = "Muhammad Ali's fight with Larry Holmes" 
print mystring.replace("'", "'") 

収量:

ラリー・ホームズ

関連する問題