【发布时间】:2021-06-06 20:03:50
【问题描述】:
所以我在一个数组中有这些值:
1_642-name.xml
1_642-name2.xml
1_678-name.xml
1_678-name2.xml
我总是只希望数字最大的值出现在我的数组中。但我似乎无法弄清楚如何?
字符串由以下因素组成:
1 是一个静态数字 - 永远只有 1
642 或 _ 和 - 之间的数字是一个恒等式,并且总是可以变大
name.xml 总是一样的
在这种情况下,我想按最大标识 (678) 进行过滤。
我试过这样的事情没有运气:
string[] filter = lines.FindAll(lines, x => x.Substring(3, 3));
结果:
1_678-name.xml
1_678-name2.xml
【问题讨论】:
-
每个字符串元素的格式是否总是相同的?您是否尝试过解析每个元素的不同部分?您的号码总是 3 位数吗?
-
您的问题含糊不清,请详细说明您拥有什么以及您想要什么
-
@gunr2171 是的,格式总是一样的,或者现在你说 - 中间数字 678 我猜也可以有 4 个数字.. 没想到
-
@TheGeneral 模糊的是什么?我解释说我总是想要数字最高的值?
-
每个字符串中有 2 或 3 个“数字”。使用软件,您可以更准确地了解您的要求(“您想通过哪个 number 订购”)是最好的。在这种情况下,您的意思是说“我只想返回集合中第一个“_”和第一个“-”之间的数字最大的条目。”