我有这样的字符串
$string = '$foo$wow$123$$$ok$';
我想返回空字符串并将数组保存在数组中
0 = foo
1 = wow
2 = 123
3 =
4 =
5 = ok
我使用PREG_SPLIT_NO_EMPTY
,我知道当make PREG_SPLIT_NO_EMPTY
返回时不为空,但我希望任何结果为空,我希望我的结果保存在变量数组中,如PREG_SPLIT_NO_EMPTY
{{{} 1}}
这是我的preg_split:
$chars[$i];
我想,我的结果显示循环。没有在对象循环中我想要纯粹的循环:
$chars = preg_split('/[\s]*[$][\s]*/', $string, -1, PREG_SPLIT_NO_EMPTY);
for($i=0;$i<=5;$i++){
echo $i.' = '.$chars[$i];
}
显示我的结果。
我如何使用这个preg_split, 谢谢你提前......
答案 0 :(得分:3)
使用爆炸
$str = '$foo$wow$123$$$ok$';
$res = explode ("$",$str);
print_r($res);
Array
(
[0] =>
[1] => foo
[2] => wow
[3] => 123
[4] =>
[5] =>
[6] => ok
[7] =>
)
答案 1 :(得分:0)
使用explode会在前面和后面添加空条目。
这个匹配tcs预期输出:
$str = '$foo$wow$123$$$ok$';
preg_match_all("@(?<=\\$)[^\$]*(?=\\$)@", $str, $res);
echo "<pre>";
print_r($res);
echo "</pre>";
[0] => Array
(
[0] => foo
[1] => wow
[2] => 123
[3] =>
[4] =>
[5] => ok
)