0

我有一个小文本字符串,里面有类似 xml 的标签:

<sub>A</sub>B<sup>C</sup>

我需要解析此文本并根据标签执行操作。所以上面的文本在我的目标应用程序中看起来像A B C(MS Excel——如果我粘贴它,Excel 可以解析和格式化这个字符串,但如果我只是在单元格中输入它就不行)。

就性能而言,解析这种基于标签的文本的最佳方法是什么。格式化代码将被非常频繁地调用,我想尽可能地减少开销。我可以想到以下选项:

  1. 使用索引器逐个字符地解析它,跟踪标签何时开始/结束
  2. 使用正则表达式
  3. 将其加载到一些 XML/HTML DOM 解析器中并遍历节点

您认为哪一个对性能的影响最小?我还有什么办法可以完成任务吗?

4

1 回答 1

4

不要重新发明轮子,尤其 不要使用正则表达式

使用现有的 XML 解析器。
您应该使用 LINQ to XML。

如果你实现它并发现它太慢,你可以切换到一个XmlReader,这将非常快但使用起来很烦人。
记住; 过早的优化是万恶之源。

于 2011-01-24T04:14:26.270 回答