2012-02-18 11 views
1

正規表現may have side-effectsです。それでは、文書内のすべてのHTMLタグの開始位置と終了位置を取得するのに好ましい方法は何ですか? JsoupやNekoHTMLなどのライブラリの解析では、この情報を提供していないようですが、XMLLocatorは現在のドキュメントイベントの末尾しか提供していないため、適用されないようです。文書内のすべてのHTMLタグの文字位置を取得するための推奨方法

私は、タグのタイプや名前、その属性、またはテキストから何かを取り除くことには興味がありません。私はちょうど彼らがどこで始まりどこで終わるかを知りたい。

この質問の目的のために、ソースHTMLが有効であると仮定することができます。

+0

は、それが有効なHTML最初 –

+0

だことを確認してください。 – cqcallaw

+1

あなたの質問は終わりの手段のように聞こえる。どのようなビジネス上の問題を解決しようとしていますか? – Bohemian

答えて

1

私は自分自身興味があったので、私はこのパーサが見つかりました:うーん、私はそれが暗示されましたが、私が問題になっていることが明らかになってきたと仮定したhttp://jericho.htmlparser.net/

public void testJericho() throws IOException{ 

    Source source=new Source(new URL("http://example.com/")); 
    List<Element> elementList=source.getAllElements(); 
    for (Element element : elementList) { 
     printElement(element); 
    } 

} 

public void printElement(Element element) { 
    List<Element> children = element.getChildElements(); 
    for(Element child: children) 
     printElement(child); 

    System.out.println(element.getName() + " start: " + element.getBegin()); 
    System.out.println(element.getName() + " end: " + element.getEnd());   
} 
+0

ブリリアント!私はJerichoを見ていましたが、その機能が欠けていました。私はタグではなく、コンテンツに注釈を付けることに興味があるので、Element.getStartTag()とElement.getEndTag()関数も使用しています。 – cqcallaw

関連する問題