brまたはspan.../spanタグまたはその他のHTML文字/エンティティを含む可能性のある文字列があります。これらすべてを取り除き、残りのUTF-8文字を取得するための堅牢な方法が必要です。これは、理想的にはクロスプラットフォームである必要があります。
このようなものが理想的です:
http://snipplr.com/view/15261/python-decode-and-strip-html-entites-to-unicode/
しかし、それはタグも削除します。
brまたはspan.../spanタグまたはその他のHTML文字/エンティティを含む可能性のある文字列があります。これらすべてを取り除き、残りのUTF-8文字を取得するための堅牢な方法が必要です。これは、理想的にはクロスプラットフォームである必要があります。
このようなものが理想的です:
http://snipplr.com/view/15261/python-decode-and-strip-html-entites-to-unicode/
しかし、それはタグも削除します。
要件はどれだけ厳しいですか?単純な2つの状態のFSAが実行する必要があります。READCHAR状態で開始します。その状態で「<」を読み取るたびに、READTAG状態に移行します。それ以外の場合は、結果文字列に文字を書き込みます。READTAG状態にあり、「>」を読み取るときはいつでも、READCHAR状態に戻ります。
編集:おっと。エンティティについての部分を見逃しました。そのためにもREADENTITY状態が必要になります。そこから移行するときに、コードを対応するUTF-8文字に変換することもできます。
私はあなたが何を望んでいるのかはっきりしていません。
入力:これは
テキストの文字列であり、多くの行にあります "
この出力が必要です:
1) This is a string <br> <br /> of text & on many lines " (Replace & with & and " with ")
2) This is a string of text & on many lines "
単に要素を削除しますか、それともHTMLをプレーンテキストに変換しますか?
オプション1:
のすべてのオカレンスを削除したいだけで、正規表現の検索と置換を使用できる場合。
オプション2:
あなたが本当にやろうとしているのがフォーマットのあるページを取り、それをプレーンテキストに変換することである場合、私が考えることができる最も簡単で最も堅牢な方法は、ブラウザまたはブラウザエンジンを使用して実際にHTMLを解析し、そこからテキストを抽出します。
IOW、これは、Webページをブラウザーからクリップボードにコピーしてからメモ帳に貼り付けるのと同じです。