dudeonthehorse
@dudeonthehorse
Email Developer

Подскажите принцип написания конвертера кода

Входящие данные:

<wrap width="600" align="center" clear>
<col>
<row>text</row>
<row>text 2</row>
<row><img width="200" height="100" clear></row>
</col>
<separator height="20">
</wrap>


Надо получить:

<table width="600" align="center" cellpadding="0" cellspacing="0" style="border-collapse:collapse;">
<tr>
<td>text</td>
<td>text 2</td>
<td><img width="200" height="100" style="display:block; border:0;"></td>
</tr>
<tr>
<td height="20"></td>
</tr>
</table>


Это лишь простой пример обработки кода. Комбинаций замены на деле гораздо больше.
Как удобнее хранить комбинации замены и в дальнейшем их использовать(регулярки?) на практике?

Дам пояснения насчет приведенного кода выше:

— wrap заменяется на таблицу для которой указан нулевой коллапс
— параметр clear тега wrap обнуляет cellpadding и cellspacing для этой таблицы
— col заменятся на tr
— row на td соответственно
— параметр clear тега img обнуляет border и устанавливает display:block для изображения
— separator добавляет пустую строку с заданной высотой
  • Вопрос задан
  • 3193 просмотра
Пригласить эксперта
Ответы на вопрос 2
lacki
@lacki
Думаю, ответ на ваш вопрос XSLT.
Ответ написан
dVaffection
@dVaffection
По-сути, если вы можете заменить одни вхождения в строках на другие, то лучше вытянуть данные из (x)html структуры и хранить их отдельно. После вы сможете выводить их в любом представлении. Как вытягивать? Как посоветовали выше XSLT, если вы больше знакомы с синтаксисом селекторов можно использовать библиотеку вроде symfony/CssSelector
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы