删除XML标记中的空格

时间:2017-06-12 11:41:52

标签: xslt

我有一个传入的XML,其中包含以下空格:

< /ns1:pr>< /soapenv:Envelope>

由于这个空白区域,我的XSLT无法处理。有什么办法可以省略那些空格吗?

传入XML:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <soapenv:Body>
  <ns1:pr xmlns:ns1="http://example.com">
   <ns1:dis>
    <TP memberID="121897679001" FirstName="Tom" LastName="regen" auId="42424234">     
    </TP>
   </ns1:dis>
  < /ns1:pr>
 </soapenv:Body>
< /soapenv:Envelope>

1 个答案:

答案 0 :(得分:1)

不要将输入称为&#34;传入的XML&#34;因为它不是XML。没有XML工具可以处理这个。你可以选择

(a)修复产生或损坏此输入的软件中的错误,以便您处理格式良好的XML,或

(b)修复传入的非XML以使其格式良好。

由于格式良好的XML在&#34;&lt;&#34;之后永远不会有空格。除了评论或处理说明或CDATA部分之外的字符,它可能不重要,它应该足够安全,可以使用SED之类的东西进行修复,将<\s+<匹配的任何内容替换为docker volume ls docker volume inspect <volume-id> # and docker inspect <container-id> 。但修复错误会好得多。