【发布时间】:2015-06-10 15:20:36
【问题描述】:
我有一些看起来像这样的字符串:
431234412
我要做的是在每个字符串中找到“1234”的所有实例,但只要它们按顺序排列,数字就可以再次使用。
例如,在上面的字符串中会有 2 个 '1234' 实例,因为 '12344' 可以解释为 '1234-' 或 '123-4'。
我正在考虑编写递归函数,但也许有简单的方法来处理正则表达式?
【问题讨论】:
标签: php regex permutation
我有一些看起来像这样的字符串:
431234412
我要做的是在每个字符串中找到“1234”的所有实例,但只要它们按顺序排列,数字就可以再次使用。
例如,在上面的字符串中会有 2 个 '1234' 实例,因为 '12344' 可以解释为 '1234-' 或 '123-4'。
我正在考虑编写递归函数,但也许有简单的方法来处理正则表达式?
【问题讨论】:
标签: php regex permutation
执行此操作的正则表达式非常简单:
$subject= '431234412';
preg_match_all('/(1+2+3+4)+/', $subject, $matches);
您将在数组$matches 中找到所有匹配项。
每个数字后面的+ 表示该数字可以重复。
【讨论】: