Regex 使用两个分隔符分解字符串
首先,我已经看到了以下问题:Regex 使用两个分隔符分解字符串,regex,php,arrays,string,Regex,Php,Arrays,String,首先,我已经看到了以下问题: 还有更多。如果我有这样的输入: A@B#C a@b#c 对于每一行,我有两个分隔符@和#,我希望它们以数组的方式分开: 数组 ( [0]=>A [1] =>B [2] =>C ) 排列 ( [0]=>a [1] =>b [2] =>c ) 我有这样的循环代码: foreach(分解(PHP_EOL,$input)为$line){ $line=分解(“@”,$line); $line[1]=分解(#“,$line[1]); } 我知道我做错了。我得到的
A@B#C
a@b#c
对于每一行,我有两个分隔符@
和#
,我希望它们以数组的方式分开:
数组
(
[0]=>A
[1] =>B
[2] =>C
)
排列
(
[0]=>a
[1] =>b
[2] =>c
)
我有这样的循环代码:
foreach(分解(PHP_EOL,$input)为$line){
$line=分解(“@”,$line);
$line[1]=分解(#“,$line[1]);
}
我知道我做错了。我得到的结果是:
数组
(
[0]=>A
[1] =>阵列
(
[0]=>B
[1] =>C
)
)
排列
(
[0]=>a
[1] =>阵列
(
[0]=>b
[1] =>c
)
)
我想不出还有什么别的想法,所以,有人能指导我如何在同一数组中拆分字符串吗?附言:我不想用 我的首选解决方案是使用,但既然问题明确禁止使用regex,那么就这样做怎么样:
$line = explode("#", str_replace("@", "#", $line));
所以基本上,只需将所有出现的分隔符1替换为分隔符2,然后在分隔符2上拆分即可。输入的是1字符串还是2?@Rizier123我不明白。1或2是什么意思?是这样:
$input1=”A@B#C”$输入2=”a@b#c”代码>或是这样:$input=”A@B#Ca@b#c”代码>@Rizier123假定为一行。现在检查完整代码。这是一个循环<代码>:)
Wow。我才意识到我有多累,我需要一些睡眠。我的意思是“为什么你不想使用正则表达式”:)嘘。去睡觉。