怎么写一段asp.net代码,把一个字符串中所有的HTML标记都去掉,只剩下文字内容呢?
比如:<td width=/"427/" align=/"left/" class=/"cn/">较高的温度,可能增加啤酒对您的诱惑,适量饮用啤酒会给您带来清凉的感觉,但千万注意不要过量呦!</td>
去掉后只剩下:较高的温度,可能增加啤酒对您的诱惑,适量饮用啤酒会给您带来清凉的感觉,但千万注意不要过量呦!
<%@ Page language="c#" AutoEventWireup="false" debug="true"%>
<%@ import Namespace="System.Text.RegularExpressions" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html>
<head>
<title>过滤html标记</title>
<meta name="CODE_LANGUAGE" Content="C#">
<meta name=vs_defaultClientScript content="JavaScript">
<meta name=vs_targetSchema content="http://schemas.microsoft.com/intellisense/ie5">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style>
body {font-size:12px;}
</style>
<script runat="server" language="c#">
private void Page_Load(object sender, System.EventArgs e)
{
String text = "<td width=/"427/" align=/"left/" class=/"cn/">较高的温度,可能增加啤酒对您的诱惑,适量饮用啤酒会给您带来清凉的感觉,但千万注意不要过量呦!</td>";
Regex r = new Regex("<[^>]+>", RegexOptions.Compiled);
TextBox1.Text = text;
text = r.Replace(text,"");
TextBox2.Text = text;
}
override protected void OnInit(EventArgs e)
{
InitializeComponent();
base.OnInit(e);
}
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<span>原字符串:</span>
<div><asp:TextBox id="TextBox1" runat="server" TextMode="MultiLine" Rows=10 Cols="50"/></div>
<BR>
<span>替换后的字符串:</span>
<div><asp:TextBox id="TextBox2" runat="server" TextMode="MultiLine" Rows=10 Cols="50"/></div>
</form>
</body>
</html>