preg_match на строку и создание новой строки - PullRequest
0 голосов
/ 08 мая 2019

У меня есть следующие строки:

Mo,Mi-Fr 9-19 Uhr, Di 8-19, Sa 9-18 Uhr

Mo-Mi+Fr 9-19, Do 8-19, Sa 9-14 Uhr

Mo,MI,Fr 9-20 Uhr<br>
DI,Do,Sa 8:30-20 Uhr

Mo Di Do Fr 9-19, Mi 8-19, Sa 9-16

Я должен переформатировать такие строки следующим образом:

Mo 9-19 Uhr, Mi-Fr 9-19 Uhr, Di 8-19, Sa 9-18 Uhr

Mo-Mi 9-19, Fr 9-19, Do 8-19, Sa 9-14 Uhr

Mo 9-20 Uhr, MI 9-20 Uhr, Fr 9-20 Uhr<br>
DI 8:30-20 Uhr, Do 8:30-20 Uhr, Sa 8:30-20 Uhr

Mo 9-19, Di 9-19, Do 9-19, Fr 9-19, Mi 8-19, Sa 9-16

К сожалению, я относительно неопытен в работе с обычнымивыражения.

Моя идея состояла в том, чтобы сначала создать preg_match, а затем создать новую строку.

Кто-нибудь может мне помочь?

1 Ответ

0 голосов
/ 15 мая 2019

Попробуйте с этим:

([a-z]++(?:-[a-z]++)?+)\h*+[,+]?\h*+(?=(?:\h*+[,+]?\h*+[a-z]++(?:-[a-z]++)?+)+\h*+([0-9:-]++))

У вас есть демо здесь

...