我有一个像这样的String html:
> [CDATA[<div><b>index1:</b> <div
> class="ExternalClass4C236C53DAF34307B4580A8DA27FA373"><p></p>
> <div>value1</div> <div></div> <div>value2</div>
> <div></div> <div>value3 </div> <div></div> <div>value4
> </div> <div></div> <div>value5</div> </div></div>
> <div><b>index2:</b> value6</div> <div><b>index3:</b> value8</div>
> <div><b>index4:</b> valu7</div> <div><b>index5:</b>value10</div>
我正在使用jsoup。
Document doc = Jsoup.parse(description);
元素el = doc.get .......
我如何获得价值字符串?
答案 0 :(得分:0)
我不知道一个简单的解决方案。您可以选择div元素的内容。但是你会以这种方式获得一些指数值。
一个硬编码的解决方案是这样的:
public void testParseValue() {
String html ="[CDATA[<div><b>index1:</b> <div" +
"> class=\"ExternalClass4C236C53DAF34307B4580A8DA27FA373\"><p></p>" +
"> <div>value1</div> <div></div> <div>value2</div>" +
"> <div></div> <div>value3 </div> <div></div> <div>value4" +
"> </div> <div></div> <div>value5</div> </div></div>" +
"> <div><b>index2:</b> value6</div> <div><b>index3:</b> value8</div>" +
"> <div><b>index4:</b> valu7</div> <div><b>index5:</b>value10</div>";
Document doc = Jsoup.parse(html);
Elements divs= doc.select("div");
System.out.println(divs.get(2).text());
System.out.println(divs.get(4).text());
System.out.println(divs.get(6).text());
System.out.println(divs.get(8).text());
System.out.println(divs.get(10).text());
System.out.println(divs.get(11).text().substring("index2: ".length()));
System.out.println(divs.get(12).text().substring("index3: ".length()));
System.out.println(divs.get(13).text().substring("index4: ".length()));
System.out.println(divs.get(14).text().substring("index5:".length()));
}
它是用Java编写的,因此您可能希望将System.ou.println调用更改为日志调用。 您也可以使用“:”字符的位置而不是整个indexX:strings。