0

我想解决:<tag>alphabetic characters and space</tag>

我建议这个:

<.*>([A-Za-z]+)</.*>

这个对吗?

4

3 回答 3

8

请,为了任何可怜的开发人员将不得不处理您的代码,请不要尝试使用正则表达式解析 XML。

请改用 SAX 或 DOM 解析器。如果您在 Google 上搜索,网络上有很多很好的指南,但这里有一个使用标准javax.xml包的快速示例...

Document doc = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(xmlFile);
Node node = doc.getElementsByTagName("tag").item(0);
String value = node.getNodeValue();
于 2012-12-06T13:33:45.987 回答
2

如果输入是:<tag> something <inner-tag> some other thing </inner-tag> </tag>

我建议您使用 XML 解析器库,例如Apache Digester

于 2012-12-06T13:34:56.097 回答
-1

您应该添加?字符以排除冗余选择

    <.*?>[A-Za-z ]*</.*?>
于 2012-12-06T13:36:15.803 回答