2 つの強力な html マークアップ要素の間で、この html マークアップからテキストを抽出する必要があります
<h6>Main Heading</h6>
<ul>
<strong>Sub heading 1</strong>
<li>text1</li>
…
<li>textn</li>
<strong>Sub heading 2</strong>
<li>text1</li>
…
<li>textn</li>
</ul>
のように、Elements の配列ですべての strong 要素と li 要素 (テキスト) を取得する必要があります。私はそのようなすべての強い要素を取得しようとしました
Element ulElement = doc.select("h6:matchesOwn(Main Heading).first();
Elements subHeadings = ulElement.select("strong");
Elements subLIElements = ulElement.select("strong ~ li");
したがって、subHeadings 変数にすべてのサブ見出しがあり、subLIElements 変数にすべての li 要素があります...しかし、subHeadings[0] マップのように、これら 2 つを強い要素の前のすべての li 要素に関連付ける必要があります。これらの li 要素を取得するには、ツリーをトラバースする必要があると思いますか? 選択クエリでこれを行うことができる他の方法はありますか?