0

可能重复:
正则表达式匹配打开的标签,XHTML 自包含标签除外

大家好,

我知道每个人都喜欢正则表达式问题,所以这是我的。我有一个 XML 树,其中一些节点包含 CDATA。如何只返回一个包含数据的字符串?

让我们看一个例子

<xml>
  <node>I'm plain text.</node>
  <node><![CDATA[I'm text in cdata... and may contain html, <strong>yikes!</strong>]]></node>
</xml>

会回来

I'm plain text. I'm text in cdata... and may contain html, yikes!

我读过关于不使用常规语言解析不规则语言的信息,但我确信这是可行的。小伙伴们怎么看?

谢谢,凯文

编辑: 这是一个需要快速而肮脏的解决方案来处理几行 XML 的问题。我对最初的直接拒绝感到惊讶,但通过进一步阅读(特别是从稍后提供的链接)我看到有经验的程序员知道这是应该尽可能避免的事情。活到老,学到老。谢谢。

4

2 回答 2

5

不要使用正则表达式,使用 XML/HTML 解析器。

这个问题已经被打死了。

于 2010-06-18T14:23:18.403 回答
1

看看boilerpipe,看看解决这个问题有多难。

于 2010-06-20T02:42:17.543 回答