Удаление нескольких тегов в SGML
У меня есть файл sgml как
<p><p><data>sdlksdskdmskdmsamdakmdksam<p></data>...
мой вопрос, как удалить один тег <p>
и сохранить еще один нетронутым... какое регулярное выражение было бы siutable......
1 ответ
Если ваш SGML таков, что он может быть обработан как XML, то XProc - хорошая технология для такого рода вещей, с одним шагом, таким как:
(Предполагая, что вы хотите удалить все вложенные элементы p, пока p никогда не обернет себя).
Вы определенно не хотите обрабатывать SGML/XML с помощью регулярных выражений, если не уверены на 100%, что будете иметь дело с подмножеством, имеющим определенную четко определенную лексическую форму. Подумайте, например, как вы будете обрабатывать комментарии с помощью регулярного выражения:
закомментировано ->
foo> p>
!!