【发布时间】:2015-01-29 00:21:35
【问题描述】:
我有一个这样的字符串:
$str = "1. What is love? a. Haddaway b. Haxxaway c. Hassaway d. Hannaway 2. What is love? a. Haddaway b. Haxxaway c. Hassaway d. Hannaway"
我想要做的是有这样的输出并将每个问题存储到div:
1. What is love?
a. Haddaway b. Haxxaway c. Hassaway d. Hannaway
2. What is love?
a. Haddaway b. Haxxaway c. Hassaway d. Hannaway
目前,我为正则表达式创建了这个虚构的代码(仍然是新手,抱歉!)
$str = "1. What is love? a. Haddaway b. Haxxaway c. Hassaway d. Hannaway 2. What is love? a. Haddaway b. Haxxaway c. Hassaway d. Hannaway"
$repl = preg_replace('#(\d+:.*?)(?=\d+:|$) *#', "$1", $str);
echo "<div>$repl</div>";
输出就是这个,它存储在单个div:
1. What is love? a. Haddaway b. Haxxaway c. Hassaway d. Hannaway 2. What is love? a. Haddaway b. Haxxaway c. Hassaway d. Hannaway
我对如何区分每个问题以及如何在每个选择上加上div 感到困惑......有人可以就我应该怎么做提供一些建议吗?
【问题讨论】:
-
您应该改变存储和/或生成数据的方式,将问题和答案混合在一个字符串中只会导致将来出现更多问题。
-
那么,这样做更好吗? $str = "1. Question" $str_c = "a. 1 b. 2 c. 3 d. 4" 然后做一个 preg_replace?
-
不,一个数组(或对象),带有一个问题键和一个答案键,其中包含一个带有答案的数组。结构化数据更容易处理。
-
很抱歉...感谢您教我的努力!我忘记了数组的威力。