Как проанализировать следующий String присутствует в HTML и построить дерево DOM в Java? - PullRequest
0 голосов
/ 16 декабря 2010

У меня есть строка ниже в HTML, и я хочу построить дерево Dom и получить пару имя-значение. Как я могу сделать это с помощью парсера HTML или парсера XML или REGEXP. любой фрагмент кода будет полезен. Спасибо



<$$TagStarts>

<==0>Name0</==0><##0>Value0</##0>
<==1>Name1</==1><##1>Value1</##1>
<==2>Name2</==2><##2>Value2</##2>
<==3>Name3</==3><##3>Value3</##3>
<==4>Name4</==4><##4>Value4</##4>
<==5>Name5</==5><##5>Value5</##5>

</$$TagStarts>


1 Ответ

3 голосов
/ 16 декабря 2010

Если предположить, что имена тегов предназначены только для образца .... и у вас будут несколько значимых имен тегов ...

Попробуйте использовать любой из следующих анализаторов HTML ...

http://home.ccil.org/~cowan/XML/tagsoup/

http://nekohtml.sourceforge.net/

http://jtidy.sourceforge.net/

Они предоставят вам объект документа, совместимый с W3 .... После этого это просто игра getElementsByTagNameили getElementById или используйте XPath или Xquery для получения элементов из DOM.

В противном случае вы можете использовать следующее ... У них есть собственная реализация объекта документа ...

http://htmlcleaner.sourceforge.net/ [Он также имеет некоторую базовую поддержку XPath]

http://jsoup.org/ [Имеет jquery как query API]

ADD Проверьте... http://jsoup.org/cookbook/extracting-data/selector-syntax

Я буду рекомендовать ... JSoup или Nekohtml

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...