private void button3_Click()
{
string[] a = { "TestName(20)", "TestName1", "TestName(6)", "TestName(3)", "TestName(10)", "TestName(13)", "TestName(15)" };
// 使用LINQ和正则表达式来提取括号内的数字,忽略不包含数字的字符串
int[] b = a.Where(s => Regex.IsMatch(s, @"\((\d+)\)")) // 首先过滤掉不包含(数字)的字符串
.Select(s => int.Parse(Regex.Match(s, @"\((\d+)\)").Groups[1].Value)) // 然后提取数字
.ToArray(); // 最后将结果转换为数组
// 输出数组B,现在B中只包含成功提取的数字
foreach (var num in b)
{
Console.WriteLine(num.ToString());
}
NumberSort(b);
}
private void NumberSort(int[] a)
{
int q = 0;//定义两个循环变量
int i = 0;
Console.WriteLine("排序前的字符串顺序为:");//提示输出排序前的顺序
for (i = 0; i < a.Length; i++)//利用for循环输出
{
Console.Write("TestName" + "(" + a[i] + ")" + " ");
}
Console.WriteLine("\n");
Array.Sort(a);//sort:是排序的意思,对这个一维数组进行排序
Console.WriteLine("排完序后的结果是:");//提示输出结果
for (q = 0; q < a.Length; q++)//利用for循环输出结果
{
Console.WriteLine("TestName"+"("+a[q] +")"+" ");
}
}
06-08
1059
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
12-22
893
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)