0
<code code="43683-2" codeSystem="2.16.840.1.113883.6.1" displayName="RECENT MAJOR CHANGES SECTION"/>
               <title/>
               <effectiveTime value="20111004"/>
               <excerpt>
                  <highlight>
                     <text>
                        <paragraph>Contraindications <linkHtml href="#s4">(4)</linkHtml>   10/2011</paragraph>
                        <paragraph>Warnings and Precautions, Use in Pregnant Women with Mechanical Heart Valves <linkHtml href="#s5.5">(5.5)</linkHtml>   10/2011</paragraph>
                     </text>
                  </highlight>
               </excerpt>

在这个 XML 中,我<code code="43683-2"...>使用

for (Element e : doc.select("code")) {
            if (e.attr("code").trim().equals("43683-2")){
            //codes
            }
}

现在,我怎样才能到达标签之后的第一个 标签?XML 上有多个 标签,我只想在特定代码之后获取第一个标签。<highlight><code code="43683-2"...><highlight>

由于我以前没有 JSOUP 或任何其他解析器的经验,因此任何帮助都非常有价值。

问候。

4

1 回答 1

0

您可以使用类的nextElementSibling方法Element

前任:

for (Element e : doc.select("code")) {
    if (e.attr("code").trim().equals("43683-2")) {
        Element firstHighlight = null;     
        Element sibling = e.nextElementSibling();
        while (sibling != null && firstHighlight == null) {
            if (sibling.tagName().equals("highlight")) {
                firstHighlight = sibling;
            } else {
                sibling = sibling.nextElementSibling();
            }
        }
    }
}
于 2013-07-11T10:31:10.420 回答