我有一个数字列表,我想找到至少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,但任何语言答案都会受到赞赏
答案 0 :(得分:3)
您可以使用字符串替换来将-
替换为|
,以将01-02-03-10-11-12
转换为01|02|03|10|11|12
。然后像这样包装:
((01|02|03|10|11|12).*){3}
这将找到任何数字对,然后忽略任意数量的字符... 3次。如果匹配,则成功。