我有一个string aa=@"2341kj%%1%%h542gf52498t7ertgs%%2%%0e76rts87df6g9dfs956s
sdfsdf%%3%%dgthdfhufdtrfydrtydr%%4%%tydrtydghjgfhjj
dertydertdydrt%%5%%ydert6yudrtyudrtyudyud7f6g"
然后有个
List<string[]> sList = new List<string[]>();
string[] str1 = new string[] {"1","aaaaeraa"};
sList.Add(str1);
string[] str2 = new string[] { "2", "berb" };
sList.Add(str2);
string[] str3 = new string[] { "3", "cccccqwcccc" };
sList.Add(str3);
string[] str4 = new string[] { "4", "awer1" };
sList.Add(str4);
string[] str5 = new string[] { "5", "1a23aw55weer1" };
sList.Add(str5);
.......................
................我想把红色部分
%%1%% 替换成string[] {"1","aaaaeraa"}里面的"aaaaeraa"
%%2%% 替换成string[] {"2","berb"}里面的"berb"
...............
........
同理全部替换掉注:红色的的个数和List的个数是相同的
sdfsdf%%3%%dgthdfhufdtrfydrtydr%%4%%tydrtydghjgfhjj
dertydertdydrt%%5%%ydert6yudrtyudrtyudyud7f6g"
然后有个
List<string[]> sList = new List<string[]>();
string[] str1 = new string[] {"1","aaaaeraa"};
sList.Add(str1);
string[] str2 = new string[] { "2", "berb" };
sList.Add(str2);
string[] str3 = new string[] { "3", "cccccqwcccc" };
sList.Add(str3);
string[] str4 = new string[] { "4", "awer1" };
sList.Add(str4);
string[] str5 = new string[] { "5", "1a23aw55weer1" };
sList.Add(str5);
.......................
................我想把红色部分
%%1%% 替换成string[] {"1","aaaaeraa"}里面的"aaaaeraa"
%%2%% 替换成string[] {"2","berb"}里面的"berb"
...............
........
同理全部替换掉注:红色的的个数和List的个数是相同的
"%%(\d)%%"
取得里面的数字,就是key了,用key 查出 Dictionary的value
sdfsdf%%3%%dgthdfhufdtrfydrtydr%%4%%tydrtydghjgfhjj
dertydertdydrt%%5%%ydert6yudrtyudrtyudyud7f6g";
List<string[]> sList = new List<string[]>();
string[] str1 = new string[] { "1", "aaaaeraa" };
sList.Add(str1);
string[] str2 = new string[] { "2", "berb" };
sList.Add(str2);
string[] str3 = new string[] { "3", "cccccqwcccc" };
sList.Add(str3);
string[] str4 = new string[] { "4", "awer1" };
sList.Add(str4);
string[] str5 = new string[] { "5", "1a23aw55weer1" };
sList.Add(str5);
aa = Regex.Replace(aa, @"%%(\d+)%%", new MatchEvaluator(delegate(Match m)
{
int num = Convert.ToInt32(m.Groups[1].Value);
return sList[num-1][1];
}));
Console.WriteLine(aa);