2017-10-16 128 views
-3

让我们下面的XML为例删除XML标签中的白色空间:替换/使用JavaScript

<?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

堆栈溢出不是免费的代码写入服务,请显示您的代码/努力和实际问题是什么。 – Cerbrus

+0

[如何在Sublime Text中删除xml标签中的特定空白符?](https://stackoverflow.com/questions/35613715/how-do-i-remove-specific-whitespace-inside-xml-tag- in-sublime-text) –

+0

@Cerbrus我意识到这一点,只是想尽量简化问题。 – hotnot

回答

-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标签,替代品功能将从所有这些匹配中删除空间\s

+0

谢谢:)这对我有用。 – hotnot

+0

而不是'{0,1}',只需使用'?' – Cerbrus