比如说 string s = "sdfsf@ds ssss@sdds @aa ddsss";
查出ds的id是1。sdds是2。aa是3。
替换成 sdfsf<a href="Default10.aspx?uid=1">@ds</a> ssss<a href="Default10.aspx?uid=2">@sdds</a> <a href="Default10.aspx?uid=3">@aa</a> ddsss
该怎么做呢?
查出ds的id是1。sdds是2。aa是3。
替换成 sdfsf<a href="Default10.aspx?uid=1">@ds</a> ssss<a href="Default10.aspx?uid=2">@sdds</a> <a href="Default10.aspx?uid=3">@aa</a> ddsss
该怎么做呢?
解决方案 »
- asp.net Button按钮的显示好奇怪啊
- BOSS要我做成这个式样的,各位大哥给点思路啊,
- EXECL导入GridView显示问题
- ASP.net2.0 和WEB标准问题请教
- NET 如何取ASP 中COOKICE 中的值
- 谁能帮我写一个ajax TextBox服务端控件扩展?
- ASP.NET数据库连接问题
- 请问如何让asp.net应用程序的第一个aspx页面在打开的时候是无状态栏,无菜单等特性???
- 五年之后,我是离开还是留下,.net,C#是否继续,谢谢各位!
- CSDN实在太慢了,不想搜索了,初学者的第四个问题:怎么写config.web?
- 多个项目如何共用ascx
- 怎么用js把一个页面的数据导出到Excel
void Main()
{
string s = "sdfsf@ds ssss@sdds @aa ddsss";
s=Regex.Replace(s,@"((@)([^\s]+))",delegate (Match m)
{
int id=0;
switch(m.Groups[3].Value)
{
case "ds":
id=1;
break;
case "sdds":
id=2;
break;
case "aa":
id=3;
break;
default:
break;
}
string r=string.Format(@"<a href=""Default10.aspx?uid={0}"">",id);
return r+m.Value+"</a>";
});
Console.WriteLine(s);
// href="Default10.aspx?uid=1">@ds</a> ssss<a href="Default10.aspx?uid=2">@sdds</a> <a href="Default10.aspx?uid=3">@aa</a> ddsss}
int i = 1;
Console.WriteLine(Regex.Replace(s, "@[a-zA-Z]+", m => "<a href=\"Default10.aspx?uid=" + i++.ToString() + "\">" + m + "</a>"));
int i=0;
string result = Regex.Replace(str, @"(?i)@[a-z]+", delegate(Match m)
{
i++;
return "<a href=\"Default10.aspx?uid=" + i.ToString() + "\">" + m.Value + "</a>";
});
Response.Write(result);
int i = 0;
str = Regex.Replace(str, @"(?i)@[a-z]+", delegate(Match m) { i++; return "<a href=\"Default10.aspx?uid=" + i + "\">" + m.Value + "</a>"; });
Console.Write(str);
sdfsf<a href="Default10.aspx?uid=1">@ds</a> ssss<a href="Default10.aspx?uid=2">@sdds</a> <a href="Default10.aspx?uid=3">@Aa</a> ddsss
我只是举列。id是根据ds或sdds从数据库里查出来的。
这个问题我已经解决了。