Всем доброго времени суток,
У меня есть предустановленная ситуация, которую нельзя изменить, которая вращается вокруг части текста html (тела страницы) и некоторых настраиваемых пользователем тегов внутри этого тела.
Проблема, которая очень похожа на шаблон, но связана с ситуацией с источником без рефакторинга, состоит в том, что мне нужно разделить исходное тело на
html part 1
tag1
html part 2
tag2
html part 3
tag3
и так далее,например, из
<body>
<b>This is my first line</b> And this is <b>%%tag one%%</b> but of course it
doesn't end here %%second tag%%
Additionally %%second tag%% tags can be repeated inside the body.
In fact, %%tag one%% or even %%tagthree%%
</body>
В идеале, я должен получить массив:
[0] = "<body>
<b>This is my first line</b> And this is <b>"
[1] = "%%tag one%%"
[2] = "</b> but of course it
doesn't end here "
[3] = "%%second tag%%"
[4] = "Additionally "
[5] = "%%second tag%%"
[6] = " tags can be repeated inside the body.
In fact, "
[7] = "%%tag one%%"
[8] = " or even "
[9] = "%%tagthree%%"
[10] = "
</body>"
Теги - это простые текстовые метки (допустимый пробел, _ и -), заключенные, например, в%% %%first tag%%
Я понимаю, что существует множество различных решений, но, поскольку мне нужна максимально возможная производительность, мне нужны указания, что нужно попробовать, а что избежать.Кроме того, мне интересно, есть ли в php какая-то функция для такого рода дел.
Надеюсь, некоторые из вас уже сталкивались с чем-то подобным, что слишком сложно для идеального решения, для моих текущих навыков синтаксического анализа.
Спасибо