【发布时间】:2011-04-05 14:24:54
【问题描述】:
在 perl 中,为了进行数值比较,我们将 +/- inf 作为大于/小于其他数字的数字。是否还有 gt/lt 其他字符串?
我问的原因是我想在字符串列表的末尾添加一个或另一个,以确保循环将在列表末尾之前终止。
【问题讨论】:
-
基于该链接中的答案,我想我可以编写一个模块来重载比较函数,以便在与任何字符串进行比较时执行我想要的操作。但在实践中,我意识到我唯一要比较的是
YYYYMMDD形式的日期字符串,所以我的“无限”字符串是"99999999"。不过,我现在有点想编写模块。 -
显然无穷大等于 99999999。谁知道呢?
-
嗯,不。我只需要在几千年后停止使用我的脚本。这是一个千年虫。
-
好吧,又过了一天,我终于想出了如何以 1/3 的长度和 3 倍的清晰度重写整个有问题的代码块。毫不奇怪,更新、更短、更简单的代码不需要无限字符串或任何其他愚蠢的东西。它的效率有点低(O(n^2) 而不是 O(n)),但它仍然比我启动和停止秒表的速度更快,所以谁在乎呢?
标签: perl string comparison