У меня есть такая строка:
####################
Section One
####################
Data A
Data B
####################
Section Two
####################
Data C
Data D
etc.
Я хочу разобрать что-то вроде:
$arr(
'Section One' => array('Data A', 'Data B'),
'Section Two' => array('Data C', 'Data D')
)
Сначала я попробовал это:
$sections = preg_split("/(\r?\n)(\r?\n)#/", $file_content);
Проблема в том, что файл не идеально чистый: иногда между разделами имеется разное количество пустых строк или пробелов между строками данных.
Кажется, что сама структура заголовка секции относительно непротиворечива:
####################
Section Title
####################
Число #, вероятно, соответствует, но я не хочу на это рассчитывать. Пробел в строке заголовка довольно случайный.
Как только я разделю его на разделы, я думаю, что это будет довольно просто, но любая помощь в написании очередного убийцы поможет получить его там. (Или если есть лучший подход, чем reg ex ...)