Önce metin içeriği alınır, regex ile parçalanır, foreach ile dönüp ilgili kısımlar html'e dökülür. Ben iki diziye ayırdım, ilki belki saf hali, istediğin gibi kullanırsın ikincisini şuradaki örneğime uyarladım.
$content = file_get_contents('test.txt');
preg_match_all('/(([0-9\.]+)(.*))
([A\) ]+(.*))
([B\) ]+(.*))
([C\) ]+(.*))
([D\) ]+(.*))
([E\) ]+(.*))/', $content, $matches);
$sorular = [];
foreach ($matches[1] as $key => $value) {
$soru = explode('.', $value);
$sorular[$key] = [
'soru_numarası' => $soru[0],
'soru' => trim($soru[1], ' '),
'cevaplar' => [
'A' => $matches[5][$key],
'B' => $matches[7][$key],
'C' => $matches[9][$key],
'D' => $matches[11][$key],
'E' => $matches[13][$key],
]
];
}
echo '';
foreach ($sorular as $soru) {
echo '
'.$soru['soru_numarası'].'-) '.$soru['soru'].'
';
}
Canlı örnek:
Bebvyp