【发布时间】:2011-05-06 16:01:05
【问题描述】:
我用 c# 为 2D 图形框架创建了某种文本渲染工具。
现在我试图解析带有特定 html 标签的文本,例如:
"Hello <b>world</b>!"
但是解析代码越来越难看,我想,一定有一些库可以做到这一点。最后它应该输出一个数据结构数组,如:
string text;
bool IsBold;
bool IsItalic;
bool IsUnderlined;
...
或
string text;
FontStyle FontStyle;
有人知道这样的解析器吗?
非常感谢!
【问题讨论】:
-
你的代码应该如何响应
"<b>hel</b>lo"等输入? -
那么只有 'hel' 是粗体。它将输出一个包含 2 个数据结构的数组。'hel' 与 IsBold = true,'lo' 与 IsBold = false。
-
那么,下面的输入呢?
"<b><i>hi</i> there</b>, you"。显然,一旦允许嵌套标记,数组就不够用了。 -
这正是我的问题.. 在这种情况下,它应该在数组中输出以下条目:“hi”,IsBold = true 和 IsItalic = true,然后“there”,IsBold = true 和 IsItalic = false,然后是 ", you" 与 IsBold = false 和 IsItalic = false.. 这有意义吗?