정규식 질문드립니다.
본문
특정 xml 문자에서 특정 태그 안에 있는 내용이 이상한값이 있는게 있어서
예를 들어서
<dtText>
<![CDATA[블루/80]]>
</dtText>
<maxSaleQty>
<![CDATA[3]]>
</maxSaleQty>
이두개가 있다면 아래 maxSaleQty 의 데이터만 삭제가 가능한가요?
<maxSaleQty>
</maxSaleQty>
이런식으로요 안에 내용 아예삭제하고 싶습니다.
답변 1
<?php
$data = '<dtText>
<![CDATA[블루/80]]>
</dtText>
<maxSaleQty>
<![CDATA[3]]>
</maxSaleQty>';
$new_data = null;
$start = strpos($data, "<maxSaleQty>");
$start_length = mb_strlen("<maxSaleQty>");
$end = strpos($data, "</maxSaleQty>");
$end_length = mb_strlen("</maxSaleQty>");
$del_str = substr($data, $start+$start_length, $end-$start-$end_length);
echo str_replace($del_str,'',$data);
?>
느낌 흘러가는대로 작성한거라 깔끔하지는 않습니다.
작성자분이 원하시는대로 maxSaleQty 안에 있는 문자열 제거는 정상적으로 됩니다.
!-->
답변을 작성하시기 전에 로그인 해주세요.