如何用 preg_split 拆分重复的字符和数字?

How to split repeated chars and numbers with preg_split?

我正在尝试解决一些问题,我需要拆分重复的字符和所有整数

$code = preg_split('/(.)(?!|$)\K/', $code);

我试过这个,但是它把字符分开而不是重复的整数,我只需要字符

我有一个字符串'FFF86C6'

我需要一个数组(FFF, 86, C, 6);

模式'/(.)(?!|$)\K/' returns (FFF, 8, 6, C, 6)

你知道怎么做吗?

您可以将此正则表达式与 preg_match_all:

一起使用
([A-Za-z])(*)|\d+

它寻找一个字母,后跟一些相同字符的数字,或一些数字。通过使用 preg_match_all 我们可以找到字符串中的所有匹配项。 PHP 中的用法:

$string = "FFF86CR6";
$pieces = preg_match_all('/([A-Za-z])(*)|\d+/', $string, $matches);
print_r($matches[0]);

输出:

Array (
  [0] => FFF
  [1] => 86
  [2] => C
  [3] => R
  [4] => 6 
)

Demo on 3v4l.org