问个正则表达式 很简单ubb标签的

yzg614 2012-05-10 08:53:23
插入表情的时候 在文本框显示 [em15] 请问用正则怎么匹配
在后台替换成 <img src="/img/mood/15.gif" border="0" />
另外在编辑的时候 又如何把数据<img src="/img/mood/15.gif" border="0" /> 替换成[em15]
需要两个版本 一个是js 一个是.net
由于对正则不熟 请帮忙下 谢谢
...全文
155 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
huangwenquan123 2012-05-10
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
huangwenquan123 请问如果把数据<img src="/img/mood/15.gif" border="0" /> 替换成[em15] 应该怎么写?谢谢
[/Quote]在3楼有写了个js替换的.6楼是c#的
huangwenquan123 2012-05-10
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
huangwenquan123 请问如果把数据<img src="/img/mood/15.gif" border="0" /> 替换成[em15] 应该怎么写?谢谢
[/Quote]

string str = "aaa<img src=\"/img/mood/11.gif\" border=\"0\" />bbb<img src=\"/img/mood/12.gif\" border=\"0\" />ccc<img src=\"/img/mood/15.gif\" border=\"0\" />ddd";

string result = Regex.Replace(str, @"<img[^>]*?""/img/mood/(\d+)\.gif""[^>]*?>", @"[em$1]");
Console.WriteLine(result);
//aaa[em11]bbb[em12]ccc[em15]ddd

EnForGrass 2012-05-10
  • 打赏
  • 举报
回复

string str = "xxxx<img src="/img/mood/15.gif" border="0" />xxxxx<img src="/img/mood/17.gif" border="0" />xxx<img src="/img/mood/18.gif" border="0" />xxx";
string result = Regex.Replace(str, @"<img[^>]*?""/img/mood/(\d+)\.gif""[^>]*?", @"\[em(\d+)\]");
Response.Write(result);
yzg614 2012-05-10
  • 打赏
  • 举报
回复
huangwenquan123 请问如果把数据<img src="/img/mood/15.gif" border="0" /> 替换成[em15] 应该怎么写?谢谢
huangwenquan123 2012-05-10
  • 打赏
  • 举报
回复

string str = "xxxx[em11]xxxxx[em12]xxx[em15]xxx";
string result = Regex.Replace(str, @"\[em(\d+)\]", @"<img src=""/img/mood/$1.gif"" border=""0"" />");
Response.Write(result);
/*
xxxx<img src="/img/mood/11.gif" border="0" />xxxxx<img src="/img/mood/12.gif" border="0" />xxx<img src="/img/mood/15.gif" border="0" />xxx
*/

    var str="xxxx<img src=\"/img/mood/11.gif\" border=\"0\" />xxxxx<img src=\"/img/mood/12.gif\" border=\"0\" />xxx<img src=\"/img/mood/15.gif\" border=\"0\" />xxx";
var reg = /<img[^>]*?src=\"\/img\/mood\/(\d+)\.gif\"[^>]*?>/ig;
var result = str.replace(reg,"[em$1]");
document.write(result);
//xxxx[em11]xxxxx[em12]xxx[em15]xxx
yzg614 2012-05-10
  • 打赏
  • 举报
回复
[em15] 中的15不是固定的..
bdmh 2012-05-10
  • 打赏
  • 举报
回复
替换 [em15]

string source = "xxxx[em15]xxxxx[em15]xxxxxx";
string replacestr = @"<img src=""/img/mood/15.gif"" border=""0"" />";
Regex reg = new Regex(@"\[em15\]");
source = reg.Replace(source, replacestr);

替换成<img

string source = @"xxxx<img src=""/img/mood/15.gif"" border=""0"" />xxxxx<img src=""/img/mood/15.gif"" border=""0"" />xxxxxx";
string replacestr = @"[em15]";
Regex reg = new Regex(@"<img[^>].*?15.gif.*?/>");
source = reg.Replace(source, replacestr);

根据实际情况调试一下吧
yzg614 2012-05-10
  • 打赏
  • 举报
回复
谢谢huangwenquan123
huangwenquan123 2012-05-10
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]
不好意思 请问 在js中把[em15]替换成<img src="/img/mood/15.gif" border="0" /> 应该怎么写?
[/Quote]
<script type="text/javascript">
var str="aaa[em11]bbb[em12]ccc[em15]ddd";
var reg = /\[em(\d+)\]/ig;
var result = str.replace(reg,"<img src=\"/img/mood/$1.gif\" border=\"0\" />");
alert(result)
</script>
yzg614 2012-05-10
  • 打赏
  • 举报
回复
搞定了
yzg614 2012-05-10
  • 打赏
  • 举报
回复
不好意思 请问 在js中把[em15]替换成<img src="/img/mood/15.gif" border="0" /> 应该怎么写?

62,267

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧