$a = "{{Вася|Петя} {идёт|пошёл} в магазин|{Василий|Петр} {{пешком сходил}{на своих двоих}|сбегал} в магазин}";
preg_match_all('!__не знаю как составить___!s',$a,$b,PREG_SET_ORDER);
надо занести в $b[] всю строку
а так же в:
[1] = > {Вася|Петя} {идёт|пошёл} в магазин
[2] = > {Василий|Петр} {{пешком сходил}{на своих двоих}|сбегал} в магазин}
т.е. как я понимаю регулярка должна найти первую "{" потом смотреть если "{"-открылось, встретила несколько "|" потом закрылась "}", то это пропускаем, идём дальше, ещё не сколько раз такое выражение, идём дальше и тут одиноко стоящая "|" вот до этого знака и загоняем в массив.
то же сделать со следующим значением $a, в общем мне нужна нормально работающая схема разбивки на две части этой штуки..
Спасибо!