从字符串中删除html标记
问题描述:
我正在从数据库中读取字段并在GridView中显示,并在该字段中包含文本中的<br/>
标记。所以我试图从代码中删除这些,但是当我检查e.Row.Cells[index].Text
的值时,它不包含<br/>
并且代之以具有;br/>
。从字符串中删除html标记
所以,我试图创建一个功能,消除开始<
与>
结束或&
开始,以;
结尾的字符串。该代码删除<>
,但仍表现出br/
代码:
index = gv.Columns.HeaderIndex("Message");
if (index > 0)
{
string message = RemoveHTMLMarkup(e.Row.Cells[index].Text);
e.Row.Cells[index].Text = message;
}
static string RemoveHTMLMarkup(string text)
{
return Regex.Replace(Regex.Replace(text, "<.+?>", string.Empty), "&.+?;", string.Empty);
}
如何删除<br/>
标签?
答
由于这是一个字符串,你(SH | C)乌尔德只使用String.Replace()
:
static string RemoveHTMLNewLines(string text)
{
return text.Replace("<br/>", string.Empty);
}
或者,如果有需要更换Environment.NewLine
。
答
- 取消字符串。
- 然后使用正则表达式来查找和删除预期的标签。
或者
如果你有足够的时间去学习和使用,然后用HtmlAgilityPack包。
[义务链接](http://stackoverflow.com/a/1732454/2307070)关于为什么ṫ̨̗̺̭̮̞̗̜̮̗̙̫̺̖̭̯͊ͨ̌͒̍͘͘͟͝h̸͓̩̙͙̻̗͔̞̘̟̩̯͋͑͐a̴̧ͨͭ͒ͯ̓͐̇ͥ͢҉̨̳̜̤͍͖t̵̳̳͕͉͋̓͐ͦͬ̈̚是一个坏主意。另外,你确定它是'br/>'而不是'< br/>'? –
@ThomasAyoub是的,你是对的,它是'< br/>'。所以,如果我不使用正则表达式,那么我应该使用什么? – user123456789