- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有不同深度的不同章节。
因此有 14.1 和 14.4.2 以及 14.7.8.8.2 等等。
按字母数字排序,14.10 将出现在 14.2 之前。那很糟。应该在14.9之后。
有没有一种简单的方法来对这些进行排序,而不添加前导零? f.e.用 linq?
最佳答案
public class NumberedSectionComparer : IComparer<string>
{
private int Compare(string[] x, string[]y)
{
if(x.Length > y.Length)
return -Compare(y, x);//saves needing separate logic.
for(int i = 0; i != x.Length; ++i)
{
int cmp = int.Parse(x[i]).CompareTo(int.Parse(y[i]));
if(cmp != 0)
return cmp;
}
return x.Length == y.Length ? 0 : -1;
}
public int Compare(string x, string y)
{
if(ReferenceEquals(x, y))//short-cut
return 0;
if(x == null)
return -1;
if(y == null)
return 1;
try
{
return Compare(x.Split('.'), y.Split('.'));
}
catch(FormatException)
{
throw new ArgumentException();
}
}
}
关于c# - 排序章节内容,如 14.1.2.3 和 14.10.1.2.3.4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8971530/
我想预加载同一视频的各个章节。这样当有人跳到新章节时就不会出现缓冲。 例如,如果第一章从 00:00 开始,下一章从 00:15 开始,我希望我的播放器提前预加载每章 2-3 秒。 最佳答案 您可以尝
我似乎无法在 NASM 的文档中找到任何关于在代码中使用“Section”或“[SECTION”(带方括号)之间的区别的明确信息。我知道这些是宏,但我发现它们几乎可以互换使用。是这样吗?换句话说就是
最近我去了w3schools New HTML5 Elements并发现了“section”和“article”标签。我的问题是什么时候应该使用节、文章或 div 标签,为什么当我使用节和文章标签时文
我正在尝试使用 JavaScript 来导航 Quicktime 视频中的章节。 我可以使用此功能查看每个 Quicktime 有多少章: function GetChapterCount(an
Eloquent javscript 在模块章节的第 10 章中写道: The most obvious way is the special operator eval, which will ex
我正在开发 HTML5 应用程序,我在其中使用了以下标签。 我想知道在 HTML5 应用程序中这些标签的实际用途是什么。我们已经使用了 我们传统应用程序中的标签也与上面给定的标签一样工作,所以
我正在尝试使用适用于 Linux 的 WKHTMLTOPDF 生成一本 PDF 书籍,并通过 Perl 程序享用午餐。我将多个带有封面和页脚信息的 html 文件通过 html 文件传递到 WKH
在关于流的介绍性章节中,Okasaki 为 drop 提供了 2 个实现。在溪流上。 他明确提到第二个更有效(并且两者具有相同的语义),但我似乎无法弄清楚为什么一个比另一个更有效。任何见解将不胜感激。
什么是 rails 方式显示嵌套层次结构的 View ?似乎是一个简单的问题,但试着忍受我,也许有人会理解(并希望能消除)我的困惑。 我的应用程序是一个简单的层次结构(为了讨论的目的而更加简化): 在
我是一名优秀的程序员,十分优秀!