【发布时间】:2013-03-19 13:07:06
【问题描述】:
我有一串html。我想将所有段落拆分为一个数组列表。但拆分后的段落不应为空。分割后的段落应该包含一些普通文本,如果它只包含html文本并且里面没有普通文本如:<htmltag>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</htmltag>,那么它应该被销毁或不分割。
这是一个如何在 html 字符串中分割段落的示例:
System.Text.RegularExpressions.Match m = System.Text.RegularExpressions.Regex.Match(htmlString, @"<p>\s*(.+?)\s*</p>");
ArrayList groupCollection = new ArrayList();
while (m.Success)
{
groupCollection.Add(m.Value);
m = m.NextMatch();
}
ArrayList paragraphs = new ArrayList();
if (groupCollection.Count > 0)
{
foreach (object item in groupCollection)
{
paragraphs.Add(item);
}
}
上面的代码可以拆分所有段落,但它不能像我上面所说的那样识别哪个段落是空的。
【问题讨论】:
-
你试过什么?
-
我已经尝试使用正则表达式从 html 字符串中拆分出所有段落。但是我不确定它是空的。
-
你能发布你的代码有问题吗..?
-
如果我使用RegularExpressions,那么它只会帮助我分割段落,但如果有一些文字如:
<htmltag>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</htmltag>,那么我不知道如何删除这些空html标签。跨度> -
[stackoverflow.com/questions/3708734/… 这可能会对您有所帮助。它与您的问题有些相同...