XPath 式で動作するこの (Hpple)ラッパーを使用して、HTML ブロックのコンテンツを解析すると同時に、HTML ドキュメントに表示される文字列の順序を維持する方法を知りたいです。環境はiOSです。
例:
<html>
<body>
<div>
Lorem ipsum <a href="...">dolor</a> sit <b>amet,</b> consectetur
</div>
</body>
</html>
<div>
この結果が得られるように、タグ内のすべての文字列を元の順序で解析したいとしましょう。
Lorem ipsum dolor sit amet, consectetur
これの難点は、文字列の順序を維持することです。XPath 式を使用して、 and<div>
だけでなく、 andのすべての直接コンテンツを個別に、または同時に取得するのは簡単ですが、順序が省略されているため、andのコンテンツが文字列の最後に配置される可能性があります。<a>
<b>
<a>
<b>
上記のラッパーで XPath 式を使用してこれをどのように達成できますか?
アップデート:
前述のラッパーとプラットフォーム (特に libxml2) を使用してこれを実現する 1 つの方法は、次の XPath 式のようです。
//div/descendant-or-self::*/text()
ただし、結果の要素は分離され、1 つの文字列として配信されないため、手動で連結する必要があります。