我被要求解决这个问题。请建议我如何解决此问题。
$string = "kkjnmnmnjjjnmn";
在这里,我需要找到长度为3的连续重复的字符串。例如-kkj仅发生一次,jnm发生2次,nmn 3次。
从第一个字符开始,沿右侧方向,应该输出3个连续的字符,这些字符重复多次。
Preg_match_all will result as nmn - 2 times and not as 3 times.
如何解决呢?
$string = "kkjnmnmnjjjnmn";
$length = strlen($string);
$pieces = [];
for ($i = 0; $i < $length - 2; $i++) {
$piece = substr($string, $i, 3);
if (array_key_exists($piece, $pieces)) {
$pieces[$piece] += 1;
} else {
$pieces[$piece] = 1;
}
}
// $ pieces将包含您所需要的
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句