所以我试图爆炸一个包含答案列表的字符串。
前:答案:1。梳子。拇指。 3.墓(地下墓穴)。 4.子宫。面包屑。 6.炸弹。麻木。 8.沉着。 9.屈服。
有没有办法可以将其爆炸出来,如下所示:
$answer = explode("something here", $answerString);
$answer[1] = 1. Comb.
$answer[2] = 2. Thumb.
$answer[3] = 3. 3. Tomb (catacomb).
棘手的是我要爆炸这个字符串,以便每个答案可以在一个数字之后分开。
因此,如果答案是1个字符或10个字,则在每个数字后仍会分开。
感谢。
答案 0 :(得分:7)
不,使用explode()无法做到这一点,但您可以使用 preg_split()
http://sandbox.phpcode.eu/g/4b041/1
<?php
$str = '1. Comb. 2. Thumb. 3. Tomb (catacomb). 4. Womb. 5. Crumb. 6. Bomb. 7. Numb. 8. Aplomb. 9. Succumb';
$exploded = preg_split('/[0-9]+\./', $str);
foreach($exploded as $index => $answer){
if (!empty($answer)){
echo $index.": ".$answer."<br />";
}
}
?>
答案 1 :(得分:4)
您可能想要使用preg_split()
。类似的东西:
$answer = preg_split('/\d\./', $answerString);
答案 2 :(得分:0)
<?php
$org_string = "1. Comb. 2. Thumb. 3. Tomb (catacomb). 4. Womb. 5. Crumb. 6. Bomb. 7. Numb. 8. Aplomb. 9. Succumb";
$new_string = str_replace("b. ", "b. ,", $org_string);
$final_string = str_replace("b). ", "b). ,", $new_string);
$exploded = explode(" ,",$final_string);
foreach($exploded as $answer){
echo $answer."<br />";
}
?>