string str1 = "A_B_C_D";
string str2 = "A_E_F_D";
string str3 = "C_H_F_G"; List<string> list = new List<string>(); list.AddRange(str1.Split('_')); foreach (string item in str2.Split('_'))
if (!list.Contains(item))
list.Add(item); foreach (string item in str3.Split('_'))
if (!list.Contains(item))
list.Add(item); list.Sort(); string[] arry4 = list.ToArray();
string str2 = "A_E_F_D";
string str3 = "C_H_F_G"; List<string> list = new List<string>(); list.AddRange(str1.Split('_')); foreach (string item in str2.Split('_'))
if (!list.Contains(item))
list.Add(item); foreach (string item in str3.Split('_'))
if (!list.Contains(item))
list.Add(item); list.Sort(); string[] arry4 = list.ToArray();
List<string> lst = new List<string>(str1.Split('_'));
lst.AddRange(str2.Split('_'));
lst.AddRange(str3.Split('_'));
lst.Sort();
string[] str4 = lst.Distinct<string>().ToArray();
string str2 = "A_E_F_D";
string str3 = "C_H_F_G";
var str = (str1.Union(str2).Union(str3));
string test = string.Empty;
foreach(var i in str)
test+=i; string[] strs = System.Text.RegularExpressions.Regex.Split(test.Replace("_",""), "(?<=.)(?=.)"); foreach (var i in strs)
Response.Write(i);
例如:
str1 = "A_B_C_D"; str2 = "A_E_F_D";
则合并之后应该是ABCEFD(BCEF的顺序不固定,但必须位于A和D之间)。而不是ABCDEF,因为在str2中E和F 是在D前面的
假如:str1 = "A_B_C_D"; str2 = "D_E_F_A"; 那么组合后的顺序应该D在A前还是A在D前呢?