PHP preg_split进入数组

时间:2013-12-10 10:37:19

标签: php regex arrays preg-split

我正在使用preg_split分割值。我需要将拆分的每个值存储到一个数组中。

目前传递给preg拆分的是:

preg_split("/[0-9]/", fujitsu30001 , NULL , PREG_SPLIT_OFFSET_CAPTURE);

我需要它来分割每个数字,因此它显示为:

[fujitsu, 3, 0, 0, 0, 1]

在数组中,任何帮助都会很好。

使用preg_match会不会更好?

3 个答案:

答案 0 :(得分:2)

试试这个:

preg_split("/(?=[0-9])/", 'fujitsu30001');

http://ideone.com/9H65fW

答案 1 :(得分:1)

您应该使用匹配而不是拆分:

preg_match_all('/[a-z]+|\d/i', 'fujitsu30001', $matches);
print_r($matches[0]);

表达式匹配:

  1. 一系列字母或
  2. 一位数。
  3. 重复这一过程直到它到达主题的末尾。

答案 2 :(得分:0)

我设法通过preg_split:

来完成
$regex= "#([0-9])#";
$string = 'fujitsu30001';                    
$array = preg_split($regex, $string, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);

在点击数字时拆分字符串,使其显示为

富士通, 3, 0, 0, 0, 1