Удалите определенный XML-тег из строки с помощью PHP
Мне нужно удалить только определенный тег </licenses>
из XML-файла, сохраненного в переменной.
Я пробовал это, но не получил ожидаемого результата:
<?php
print preg_replace("</licenses>", "", "</licenses>");
?>
Возвращает:
<>
И, что удивительно, следующее удаляет содержимое всех тегов:
<?php
print preg_replace("<>", "", "</licenses>");
?>
Все, о чем я могу думать, это то, что я каким-то образом попал в шаблон регулярного выражения или что-то в этом роде. Как я могу это сделать?
2
2 answers
Вам нужно использовать разделитель регулярных выражений в первом аргументе preg_replace
, который является регулярным выражением:
echo preg_replace("#</licenses>#", "", "</licenses>");
Это вернет пустую строку, как и ожидалось.
3
Author: anubhava, 2013-12-17 12:30:05
Вы можете использовать его.
print preg_replace("/<\/licenses>/", "", "</licenses>");
2
Author: harry, 2013-12-17 12:31:52