###"01asp 01 05csp 10 10asp 15bsp" というひとつの文字列の場合
php
1<?php
2$srcString = "01asp 01 05csp 10 10asp 15bsp";
3$resultString = preg_replace('/[^0-9]+/', " ", $srcString);
4$resultString = ltrim(preg_replace('/(^[0]+| [0]+)/', " ", $resultString));
5echo '"' . $srcString . '"' . " => " . '"' . $resultString . '"' . PHP_EOL;
"01asp 01 05csp 10 10asp 15bsp" => "1 1 5 10 10 15 "
###"01asp","01","05csp","10","10asp","15bsp"と別の文字列の場合
php
1<?php
2$srcStringArray = explode(" ", preg_replace('/ /', " ", $srcString));
3foreach ($srcStringArray as $val) {
4 $resultString = trim(ltrim(preg_replace('/[^0-9]+/', " ", $val), "0"));
5 echo '"' . $val . '"' . " => " . '"' . $resultString . '"' . PHP_EOL;
6}
"01asp" => "1"
"01" => "1"
"05csp" => "5"
"10" => "10"
"10asp" => "10"
"15bsp" => "15"
まさか "01asp 01 05csp 10 10asp 15bsp"
という文字列を"1 1 5 10 10 15"
という文字列に変換ということではないですよね?