JavaのXPathは - で始まるタグを見つけます

michal.jakubeczy:

私は、次のHTMLを持っています

<data-my-tag>
  <data-another-tag>
    ... content ... 
  </data-another-tag>
  <data-my-tag>
    ... content ... 
  </data-my-tag>
</data-my-tag>

今、私は接頭辞で始まるすべてのタグを見つける必要があります<data-私は自分の名前もその内容を見つける必要があります。私は私が仕事を始めて、これは、正規表現では実現することはできません知っていますjavax.xml.parsers私は特定の名前に応じて、いくつかのタグを見つけることは簡単ですが、私はいくつかの接頭辞で始まるタグを見つけることができません。

接頭辞で始まるタグを見つけるための式やコードとは何ですか?

VGR:

あなたは、XPathの使用することができますを開始し-と機能:

public void findElements(InputSource source,
                         String prefix) {

    try {
        XPath xpath = XPathFactory.newInstance().newXPath();
        NodeList matches = (NodeList) xpath.evaluate(
            "//*[starts-with(local-name(), '" + prefix + "')]",
            source, XPathConstants.NODESET);

        int count = matches.getLength();
        for (int i = 0; i < count; i++) {
            Node match = matches.item(i);
            System.out.println("Element: " + match.getNodeName());
            System.out.println("Text: " + match.getTextContent().trim());
            System.out.println();
        }
    } catch (XPathException e) {
        throw new RuntimeException(e);
    }
}

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=275781&siteId=1