如何在给定标签内刮取字符串?

时间:2012-03-15 11:20:19

标签: java android xml string

我将XML读入一个String。我需要在<code>标记内获取所有数据。我不需要通过解析它们的整个XML文件。我可以使用简单的字符串处理技术来获取这些标记内的数据。

input : <a><b><code>Hello</code></b><code>World</code></a>

output : Hello, World

2 个答案:

答案 0 :(得分:3)

正则表达式是一个可以使用XML的工具,特别是当有很多解析器存在时。你可以使用javax.xml.xpath包为你做这些事情:

    XPath xp = XPathFactory.newInstance().newXPath();
    NodeList nl =  (NodeList)xp.evaluate("//code", new InputSource(new StringReader("<a><b><code>Hello</code></b><code>World</code></a>")), XPathConstants.NODESET);
    for(int i=0; i< nl.getLength(); i++){
        System.out.print(nl.item(i).getTextContent()+", ");
    }

将导致

Hello, World, 

答案 1 :(得分:0)

按照示例here:这很简单。