.NET中的UBB代码

public string Texttohtml(string chr)
  {
  
   if(chr==null)
    return "";
   chr=chr.Replace("<","&lt");
   chr=chr.Replace(">","&gt");
   chr=chr.Replace("/n","<br/>");
   chr = Regex.Replace(chr,@"/[url=(?<x>[^/]]*)/](?<y>[^/]]*)/[/url/]",@"<a href=$1 target=_blank>$2</a>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[url/](?<x>[^/]]*)/[/url/]",@"<a href=$1 target=_blank>$1</a>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[email=(?<x>[^/]]*)/](?<y>[^/]]*)/[/email/]",@"<a href=$1>$2</a>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[email/](?<x>[^/]]*)/[/email/]",@"<a href=$1>$1</a>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[flash](?<x>[^/]]*)/[/flash]",@"<OBJECT codeBase=http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=4,0,2,0 classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000 width=500 height=400><PARAM NAME=movie VALUE=""$1""><PARAM NAME=quality VALUE=high><embed src=""$1"" quality=high pluginspage='http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash' type='application/x-shockwave-flash' width=500 height=400>$1</embed></OBJECT>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[img](?<x>[^/]]*)/[/img]",@"<IMG SRC=""$1"" border=0>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[color=(?<x>[^/]]*)/](?<y>[^/]]*)/[/color/]",@"<font color=$1>$2</font>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[face=(?<x>[^/]]*)/](?<y>[^/]]*)/[/face/]",@"<font face=$1>$2</font>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[size=1/](?<x>[^/]]*)/[/size/]",@"<font size=1>$1</font>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[size=2/](?<x>[^/]]*)/[/size/]",@"<font size=2>$1</font>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[size=3/](?<x>[^/]]*)/[/size/]",@"<font size=3>$1</font>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[size=4/](?<x>[^/]]*)/[/size/]",@"<font size=4>$1</font>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[align=(?<x>[^/]]*)/](?<y>[^/]]*)/[/align/]",@"<align=$1>$2</align>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[fly](?<x>[^/]]*)/[/fly]",@"<marquee width=90% behavior=alternate scrollamount=3>$1</marquee>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[move](?<x>[^/]]*)/[/move]",@"<marquee scrollamount=3>$1</marquee>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[glow=(?<x>[^/]]*),(?<y>[^/]]*),(?<z>[^/]]*)/](?<w>[^/]]*)/[/glow/]",@"<table width=$1 style='filter:glow(color=$2, strength=$3)'>$4</table>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[shadow=(?<x>[^/]]*),(?<y>[^/]]*),(?<z>[^/]]*)/](?<w>[^/]]*)/[/shadow/]",@"<table width=$1 style='filter:shadow(color=$2, strength=$3)'>$4</table>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[b/](?<x>[^/]]*)/[/b/]",@"<b>$1</b>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[i/](?<x>[^/]]*)/[/i/]",@"<i>$1</i>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[u/](?<x>[^/]]*)/[/u/]",@"<u>$1</u>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[code/](?<x>[^/]]*)/[/code/]",@"<pre id=code><font size=1 face='Verdana, Arial' id=code>$1</font id=code></pre id=code>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[list/](?<x>[^/]]*)/[/list/]",@"<ul>$1</ul>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[list=1/](?<x>[^/]]*)/[/list/]",@"<ol type=1>$1</ol id=1>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[list=a/](?<x>[^/]]*)/[/list/]",@"<ol type=a>$1</ol id=a>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[/*/](?<x>[^/]]*)/[//*/]",@"<li>$1</li>",RegexOptions.IgnoreCase);
   chr = Regex.Replace(chr,@"/[quote](?<x>.*)/[/quote]",@"<center>—— 以下是引用 ——<table border='1' width='80%' cellpadding='10' cellspacing='0' ><tr><td>$1</td></tr></table></center>",RegexOptions.IgnoreCase);
   return(chr); 
  }
  public string htmltoText(string chr)
  {
   if(chr==null)
    return "";
   chr=chr.Replace("'","''");
   return(chr); 
  }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值