-1

私はJSOUPを使用しており、次のようなhtml/textを持っています:

<html><head><style type="text/css">
</style></head>
<body><div style="font-family:times new roman,new york,times,serif;font-size:14pt">first text<br><div><br></div><div style="font-family: times new roman,new york,times,serif; font-size: 14pt;"><br><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;"><font size="2" face="Tahoma"><hr size="1"><b><span style="font-weight: bold;">one:</span></b> second text<br><b><span style="font-weight: bold;">two:</span></b> third text<br><b><span style="font-weight: bold;">three:</span></b> fourth text<br><b><span style="font-weight: bold;">five:</span></b> fifth text<br></font><br>

テキストを含む最初の div (div 全体) を抽出して、次のような出力を得たいと考えています。

<div style="font-family:times new roman,new york,times,serif;font-size:14pt">first text<br></div>

もう1つの質問は、最初のテキストを意味するテキストを含む最初のhtmlタグ(一般に)を取得する方法です<p><span>

前もって感謝します

4

3 に答える 3

1

TagSoupなどの SAX スタイルの HTML パーサーを使用できます。

これを行うには、拡張DefaultHandlerを使用してパーサーを初期化し、最後にアクセスした要素をローカル メンバー変数にキャッシュしてから、メソッドが初めてcharacters(...)呼び出されたときを検出し、キャッシュされた要素とテキスト結果を出力します。

パーサーのセットアップ方法については、http: //sax.sourceforge.net/quickstart.html を参照してください。

于 2011-02-11T22:54:30.460 に答える
0

HTML パーサーを使用するか、HTML が XHTML であることがわかっている場合は XSLT プロセッサを使用します。

以下は、オープンソースの HTML パーサーのリストです。

于 2011-02-11T22:43:29.247 に答える
-1

一時的な DOM (DOMFragment http://ejohn.org/blog/dom-documentfragments/ ) をロードしてから、jQuery に切り替えて、フラグメント内で必要な div を見つけるのはどうですか?

于 2011-02-12T01:29:58.457 に答える