0

E4X を使用して JavaScript で XML をフィルタリングしようとしていますが、特定のニーズがあります。以下を考えると:

    var xml = <本文>
      <div>
        <p>これは私が持っているテキストです。</p>
      </div>
    </div>;

「This is some text」で始まる段落を文書で検索したい。

現在、段落に到達するために次のことができます。

xml..div(p.text().toString().indexOf("This is some text") === 0)

ただし、「実際の」XML はもっと複雑です (通常の Web ページと考えてください)。質問の段落を直接親にする div があるという保証はありません。同じ親要素内で問題の段落の前後に他の段落が存在する場合があります。

何か案は?

4

1 に答える 1

3

二重ドット演算子を使用して、ネストされたレベリングのすべての <p> ノードを検索し、ノードを除外して、目的の文字列で始まるノードのみを含めます。あなたが述べたように、 <div> が存在しない可能性があるため、 <div> を取り除く必要があります。

xml..p.( text().toString().indexOf("This is some text") == 0 );
于 2009-06-29T17:31:06.640 に答える