0

我有一个数字列表,我想找到至少 3 个...这里是一个例子

我在 sql 数据库中有大量数字,格式为(例如)

01-02-03-04-05-06
06-08-19-24-25-36

等等等等基本上是0到99之间的6个随机数。

现在我想找到一组给定数字中至少出现 3 个的字符串。例如:

给定:01-02-03-10-11-12 返回其中至少包含 3 个数字的字符串。例如

01-05-06-09-10-12 would match
03-08-10-12-18-22 would match
03-09-12-18-22-38 would not

我在想可能有一些算法甚至正则表达式可以匹配这个......但我认为我缺乏计算机科学教科书的经验让我绊倒了。

不——这不是作业问题!这是为了实际应用!

我正在用 ruby​​ 开发,但任何语言的答案都将不胜感激

4

1 回答 1

3

您可以使用字符串替换来-替换|01-02-03-10-11-12变成01|02|03|10|11|12. 然后像这样包装它:

((01|02|03|10|11|12).*){3}

这将找到任何数字对,然后忽略任意数量的字符...... 3 次。如果匹配,则成功。

于 2011-06-12T17:20:06.900 回答