求一个c#正则表达式的写法
来源:百度知道 编辑:UC知道 时间:2024/06/15 19:43:12
有这样的字符串:“微软推出了[[word]],[[ppt]],[[excel]]等软件”,现在我想把那些[[]]去掉,把[[word]]换成:<a href=“search.aspx?kw=word” target=“-blank”>word</a>,怎么实现啊
ilikenet大哥,我采用你的方法出现一个问题,那就是有大量字符串的时候,只能处理前两个字符串,后面的就不能处理了,我改了很多数字,都不行,要不就是一串就连在一起了,是怎么回事
ilikenet大哥,我采用你的方法出现一个问题,那就是有大量字符串的时候,只能处理前两个字符串,后面的就不能处理了,我改了很多数字,都不行,要不就是一串就连在一起了,是怎么回事
思路:
string str = “微软推出了[[word]],[[ppt]],[[excel]]等软件”;
首先,分别匹配这样的[[word]],把这个位置替换成{i}
string str = “微软推出了{0},{1},{2}等软件”;
再把[[word]]替换成word(带格式)
使用string.format(str ,"<....>","....")
也可以如下实现
例new Regex(@"(\[\[.{1,10}\]\])");
string s = @"微软推出了[[word]],[[word2]] ,[[excel]]等软件";
Regex regex = new Regex(@"(\[\[.{1,10}\]\])");
ArrayList change = new ArrayList();
for (int i = 0; i < regex.Match(s).Groups.Count; i++)
{
string ChangeValue = regex.Match(s).Groups[i].Value.ToString();
string Fvalue = ChangeValue.Replace("[", "").Replace("]", "");
string Nvalue = "<a href=“search.aspx?kw=word” target=“-blank”>" + Fvalue + "</a>";
s =