拆分字符串:如果拆多个??

hunterxing 2005-07-23 04:18:14
想把这条纪录都拆开:abc*123#def*456#ghi*789

以'#'隔开的是一组 (如:abc*123 )然后'*'是组内的。

就是说先根据'#'把纪录拆开,然后再根据'*'把刚才拆开的再拆一回,这个怎么做?

前辈们帮帮忙!谢谢!
...全文
281 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
hunterxing 2005-07-26
  • 打赏
  • 举报
回复
报错误说:

Fatal error: Maximum execution time of 30 seconds exceeded in /www/workzwy/test/chafen.php on line 12

是啥意思?
hunterxing 2005-07-26
  • 打赏
  • 举报
回复
小弟刚看完数组 试着写了个 不过有错误。。。请大哥们指点下

<?

$objstr = "abc@123#def@456#ghi@789"; //目标字符串

$arrayjing = split('#',$objstr);

$i=0;
while($arrayxing = split('@',$arrayjing[$i])) {

echo $arrayxing[0];
echo $arrayxing[1];
$i++;
}

?>

hunterxing 2005-07-25
  • 打赏
  • 举报
回复
唠叨大哥,您上面写的是使2个数组吧?

那和您$array=split('[#*]', $s);有啥区别?

感觉$array=split('[#*]', $s);简单明了。。。
xuzuning 2005-07-25
  • 打赏
  • 举报
回复
<?php
$txt = "abc*123#def*456#ghi*789";

function foo($a) {
return explode('*', $a);
}

$ar = array_map('foo', explode('#', $txt));

print_r($ar);
?>
Array
(
[0] => Array
(
[0] => abc
[1] => 123
)

[1] => Array
(
[0] => def
[1] => 456
)

[2] => Array
(
[0] => ghi
[1] => 789
)

)
www0aspsun0com 2005-07-25
  • 打赏
  • 举报
回复
一样用,对应着改一下就可以了。
hunterxing 2005-07-25
  • 打赏
  • 举报
回复
那我把 # * 这符号都改别的也一样使吧?
ImN1 2005-07-23
  • 打赏
  • 举报
回复
[#*]是正则表达式,你要看手册正则表达式部分,那咚咚可不是三言两语能说明白的
[#*]其实就是匹配所有#或者*号的字符
-神仙- 2005-07-23
  • 打赏
  • 举报
回复
看手册吧
hunterxing 2005-07-23
  • 打赏
  • 举报
回复
我刚才按照 神仙大哥 的试了下:

<?

$s = "abc*123#def*456#ghi*789";

$array=split('[#*]',$s);

echo $array[0];
echo $array[1];
echo $array[2];
echo $array[3];
echo $array[4];
echo $array[5];

?>

结果就是想要的

可:$array=split('[#*]',$s);看不太明白 谁能解释下?
hunterxing 2005-07-23
  • 打赏
  • 举报
回复
大哥们 小弟已经看了半天了 明白大哥们的思路 可我自己不知道怎么开始写(小弟刚学PHP)

能帮忙写下代码吗? 麻烦大哥大姐们了!!
hunterxing 2005-07-23
  • 打赏
  • 举报
回复
唠叨大哥:我看了 parse_str 函数

可我那2个符号: '*'和'#'是不能变的,

其实我要实现的功能是:用户输入一段字符串,我要把他根据 '*'和'#'两个符号,把数据拆分,然后做验证
ImN1 2005-07-23
  • 打赏
  • 举报
回复
分两次,第一次拆变成一维数组;第二次用循环把前面的数组拆成二维数组
具体看手册的字符串函数
颓废的老猫 2005-07-23
  • 打赏
  • 举报
回复
用explode函数
xuzuning 2005-07-23
  • 打赏
  • 举报
回复
奇怪的表述!
把“*”换成“=”
把“#”换成“&”
然后使用parse_str一切解决了!
hunterxing 2005-07-23
  • 打赏
  • 举报
回复
神仙大哥,小弟刚学PHP,好多还看不明白,您能帮忙写下全代码吗?感谢ING!
-神仙- 2005-07-23
  • 打赏
  • 举报
回复
$array=split('[#*]', $s);

21,890

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧