0

要素に が含まれているかどうかを調べる方法を知っている人は<![CDATA[ text ]]>いますか? dom4j API と Jaxen を検索しましたが、その方法が見つかりません... テキストを取得すると、cdata ラッパーが削除されます。

4

3 に答える 3

1

メソッド:

Node.asXML()

何も変更されていない値を持つ要素全体を返します。

あなたが持っている場合:

<nodes>
  <node><![CDATA[value]]></node>
</nodes>

テキスト メソッドを呼び出すと「値」が返されますが、「asXML()」を呼び出すと以下が返されます。

<node><![CDATA[value]]></node>

そこから、CDATA タグの文字列検索を実行できると思います。

于 2011-11-09T21:11:19.370 に答える
0

http://dom4j.sourceforge.net/dom4j-1.6.1/apidocs/org/dom4j/Node.html#getNodeType%28%29

これは機能しますか?

public short getNodeType()

ノードのタイプに応じてコードを返します。これにより、複数の if (instanceof) ステートメントの代わりに switch ステートメントを使用できるため、ノードの処理がポリモーフィックにはるかに簡単になります。

戻り値: ELEMENT_NODE や ATTRIBUTE_NODE などのノード タイプの W3C DOM 準拠コード

于 2011-11-09T20:59:58.137 に答える
0

技術的には、まだこれを行うことができます。


public boolean isCDATA(org.dom4j.Node node) {
  for (org.dom4j.Node n : node.content()) {
    if (org.w3c.dom.Node.CDATA_SECTION_NODE == n.getNodeType()) {
      return true;
    }
  }
  return false;
}
于 2011-11-09T21:26:24.983 に答える