首页 新闻 搜索 专区 学院

ASP.NET 正则问题

0
悬赏园豆:100 [待解决问题]

现在有个项目,文本里有些特殊字符串,汉字是打不出来的,我想使用键值对的形式替换成图片

我把特殊字符都存到数据库中
然后在文本里,我使用【特殊字符Id】的形式占位,然后像使用正则 把占位符替换成   特殊字符的图片

比如:
var s = "fsdf【12】dsfd【35】sfsdfsadfasdf【422】safsadfsafdsaf";
其中 【xxx】的元素的个数不确定,但是xxx一定是数字,xxx为数据表数据的索引

现在想使用这正则将【xxx】元素替换成 xxx 对应的数据,比如:替换结果为:
var r = "fsdf<img src="12.jpg"/>dsfd<img src="35.jpg"/>sfsdfsadfasdf<img src="422.jpg"/>safsadfsafdsaf";

请高手指导!

Andy_236的主页 Andy_236 | 初学一级 | 园豆:104
提问于:2015-03-30 18:00
< >
分享
所有回答(3)
0

你是想通过定义多个 【xxx】 来替换不同的数据id吧?绝对不可以。

1、通过正则表达式,把【xxx】找出来,一个一个的,形成一个数组

2、组个进行替换。(替换方法很无聊:正则表达式匹配后是形成一个大字符串数组的,你可以手工连接字符串,或者有对索引的支持来达到目的)。

519740105 | 园豆:5810 (大侠五级) | 2015-03-30 18:05

是这样的,现在有个项目,文本里有些特殊字符串,汉字是打不出来的,我想使用键值对的形式替换成图片

我把特殊字符都存到数据库中
然后在文本里,我使用【特殊字符Id】的形式占位,然后像使用正则 把占位符替换成   特殊字符的图片

支持(0) 反对(0) Andy_236 | 园豆:104 (初学一级) | 2015-03-30 18:12
0

自己已经解决,研究了一下asp.net 正则,解决办法:

var oldStr = "fsdfsd【3】fsdkf【12】jslkfs【123】jlkdfjlsflksdafadfssd";

var r = new Regex("【[0-9]+】");

var mc = r.Matches(oldStr);

for (int i = 0; i < mc.Count; i++)
{
Response.Write(mc[i].Value);
}

 

参考:http://www.cnblogs.com/agian/articles/1654146.html

Andy_236 | 园豆:104 (初学一级) | 2015-03-30 18:51

这不就是我给你的方案吗?

支持(0) 反对(0) 519740105 | 园豆:5810 (大侠五级) | 2015-03-30 19:40
0

针对你这个问题,我个人建议把图片存在一个文件夹里,保存的时候用特定的名称,再用JS方法实现匹配

焰£天琊 | 园豆:418 (菜鸟二级) | 2015-03-31 10:02
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册