【发布时间】:2012-03-15 11:20:19
【问题描述】:
我有一个 XML 读入单个 String。我需要获取<code> 标签内的所有数据。我不需要通过整个 XML 文件来解析它们。我可以使用简单的字符串处理技术来获取这些标签内的数据吗?
input : <a><b><code>Hello</code></b><code>World</code></a>
output : Hello, World
【问题讨论】:
-
如果该语法始终相同或非常规则,您可能可以使用正则表达式。但是如果你使用一些真正的 XML 处理,比如jondev.net/articles/Android_XML_SAX_Parser_Example,它会更安全
-
你能建议如何为上面创建一个正则表达式吗?以及如何称呼它?谢谢
-
见这里 stackoverflow.com/questions/335250/…
"<code>(.*?)</code>"将匹配您的代码标签,matcher.group(1)将包含文本。但请注意,如果 xml 可能类似于< code attribute="something">或可以包含<code>或<code>等内的其他标签,这将不起作用(或需要更复杂的正则表达式)。 XML 不是常规语言,所以有是用正则表达式无法完成的情况。