使用JavaScript替换/删除XML标记内的空格

时间:2017-10-16 08:58:05

标签: javascript xml

让我们以下面的XML为例:

<?xml version="1.0" encoding="iso-8859-1"?>
<USER>
    <FIRST NAME>John</FIRST NAME>
    <LAST NAME>Johnson</LAST NAME>
    <ADDRESS>Johnson Street</ADDRESS>
</USER>

如何使用JavaScript删除/替换标记内的空格? 这是输出的外观:

<?xml version="1.0" encoding="iso-8859-1"?>
<USER>
    <FIRSTNAME>John</FIRSTNAME>
    <LASTNAME>Johnson</LASTNAME>
    <ADDRESS>Johnson Street</ADDRESS>
</USER>

1 个答案:

答案 0 :(得分:-1)

尝试这种简单的方法

var xmlStr = `
<USER>
    <FIRST NAME>John</FIRST NAME>
    <LAST NAME>Johnson</LAST NAME>
    <ADDRESS>Johnson Street</ADDRESS>
</USER>
`;

function removeSpaceFromXMLTag( input )
{
   //return input.replace(/<(\/){0,1}[\w\s]+>/g, function(match){ return match.replace( /\s+/, "" ) });
   return input.replace(/<(\/)?[\w\s]+>/g, function(match){ return match.replace( /\s+/, "" ) });
}

console.log( removeSpaceFromXMLTag( xmlStr ) );

<强>解释

/<(\/){0,1}[\w\s]+>/g匹配 xml 标记, replacer 函数会从所有匹配项中删除空格\s