用于在给定多个输入集的数据中查找子集的正则表达式或算法思想

时间:2015-05-07 08:25:53

标签: regex string algorithm set pattern-matching

Data-to-look-in,被视为两位小数的字符串: 050607030405010602091000080403021519227701080211130608090001141313121105040605020008070705

输入集,视为两位小数的字符串: (a)050607 和 (b)080211

我想要的是什么:

输入集(b)(08, 02, 11, 0802, 0811, 0211)的给定顺序中任何“子字符串”的位置,如果它比任何输入集(a)中的20(10个两位数)位置更近,按照给定的顺序(05, 06, 07, 0506, 0507, 0607),在Data-to-look-in

可能有更多输入数据集,但就目前而言,我们只从两个开始。

如果这不是正则表达式的最佳选择,你能建议我应该如何处理这个问题吗?

1 个答案:

答案 0 :(得分:0)

考虑使用KMP算法查找“数据到查找”字符串中输入集的“子字符串”的线性时间位置。