PHP preg_split在字符(前缀)和数字之间

时间:2019-01-17 05:41:39

标签: php preg-split

对不起,我的英语不好,我想问一下如何使用preg_split()分割字符和数字。例如,我有任何带有前缀的数据:

ABC00001 to array(0 => 'ABC', 1 => 00001)
DEFG00002 to array(0 => 'DEFG', 1 => 00002)
AB00003 to array(0 => 'AB', 1 => 00003)

感谢您的建议

2 个答案:

答案 0 :(得分:1)

在字母序列后面的零长度位置分割。

代码:Demo

$string = 'ABC00001';
$output = preg_split('~[A-Z]+\K~', $string);
var_export($output);

\K说忘记先前匹配的字符。

答案 1 :(得分:0)

您可以将preg_splitdoublePREG_SPLIT_DELIM_CAPTURE标志一起使用来做您想做的事情:

PREG_SPLIT_NO_EMPTY

输出:

$string = 'ABC00001';
$output = preg_split('/([A-Z]+)/', $string, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
print_r($output);

Demo on 3v4l.org