-2

たとえば、指定された文字列はabcwhateverdefwhatever34567whatever012、 match のように順番に並んでいるグループに一致させる方法はabc, def, 34567,012?

私が今持っている正規表現(.)\1{2,}は同じ文字に一致しますが、順番には一致しません

4

2 に答える 2

1

まだ PHP コードを探している場合。

function getSequence($str) {
    $prev = 0; $next = 0; $length = strlen($str);

    $temp = "";
    for($i = 0; $i < $length; $i++) {
        $next = ord($str[$i]);
        if ($next == $prev + 1) {
            $temp .= $str[$i];
        } else {
            if (strlen($temp) > 1) $result[] = $temp;
            $temp = $str[$i];
        }
        $prev = $next;
    }

    if (strlen($temp) > 1) $result[] = $temp;

    return $result;
}

$str = "abcwhateverdefwhatever34567whatever012";
print_r(getSequence($str));
于 2013-08-04T12:35:51.953 に答える