因此,正如标题已经暗示的那样,我只是想知道是否可以通过字符串中包含的数字对字符串数组中的元素进行排序。
在我的程序中,我已经能够读取文件内容,如下所示:
Adele got 2,Jack got 8
然后,我已经能够通过逗号将该文件拆分为一个名为名称的字符串数组:
Dim fileReader As System.IO.StreamReader
Dim line As String
fileReader = My.Computer.FileSystem.OpenTextFileReader(ClassA)
line = fileReader.ReadLine
names = line.Split(",")
For Each element As String In names
Array.Sort(names)
Console.WriteLine(element)
Next
我还能够按字母顺序对文件进行排序,从而得到以下输出:
Adele got 2
Jack got 8
但是我想知道的是是否可以根据数字对这些字符串进行排序,因此输出如下所示:
Jack got 8
Adele got 2
我还考虑过使用正则表达式提取数字,将其解析为整数,将其保存到变量中,然后将其添加到数组中并比较数组,但它们必须是更简单的方法D:
任何帮助都非常感谢你们:)
Linq进行营救。我添加了数据以确保它将处理2位数字,并且因为2个元素是微弱的测试:
Dim phrases As String() = {"Adele got 2", "Zalgo got 9", "Jack got 8", "Ziggy got 11"}
phrases = phrases.OrderByDescending(Function(q) Int32.Parse(q.Split(" ").Last)).ToArray()
For Each s In phrases
Console.WriteLine(s)
Next
结果:
Ziggy got 11 Zalgo got 9 Adele got 8 Jack got 2
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句