【发布时间】:2011-02-02 10:13:19
【问题描述】:
假设我们有这样的字符串变量:
string input = "First regular, <b>bold</b>,<i>italic</i>,<u>underline</u>,<b><i><u>bold+italic+underline</u></i></b>"
- 可以包含一些html标签的字符串。
问题是我如何将每个“非标记”文本部分封装到某个标记中,以便像这样:
string output = "<plain>First regular, </plain><b>bold</b><plain>,</plain><i>italic</i><plain>,</plain><u>underline</u><plain>,</plain><b><i><u>bold+italic+underline</u></i></b>"
如何在 C# 中做到这一点?正则表达式?这样的正则表达式应该怎么看?
也许封装不是一个好的开始,我需要从以下位置创建 xml 结构:
string input = "First regular, <b>bold</b>,<i>italic</i>,<u>underline</u>,<b><i><u>bold+italic+underline</u></i></b>"
我需要创建
XDocument xml = XDocument.Parse("<plain>First regular, </plain><b>bold</b><plain>,</plain><i>italic</i><plain>,</plain><u>underline</u><plain>,</plain><b><i><u>bold+italic+underline</u></i></b>")
【问题讨论】:
-
您的问题不清楚..您打算如何将未标记的内容放入任何标签中..您的两个示例文本都是相同的..您在谈论哪个标签..是 HTML
-
我们需要更多信息。现在,第一反应是您无法使用正则表达式解析 xml,但如果您正在使用 xml 的一个子集,那么也许,只是也许,我们可以解决一些问题。 stackoverflow.com/questions/1732348/…
-
如果你需要嵌套,我不推荐使用正则表达式,虽然 .NET 的实现可以处理。