繁体   English   中英

如何检查字符串是 xml 还是不使用 Node.js

[英]How to check the string is xml or not using Node.js

我需要一些帮助。 我正在使用 Node.js 检查输入字符串是否为json/xml 我正在解释我的代码,它给出了 output 来检查给定的字符串是否为 json。

isJSON = (str) => { 
    try { 
        return (JSON.parse(str) && !!str); 
    } catch (e) { 
        return false; 
    }
} 

const result= isJSON(string);       

所以在这里我可以检查字符串,即string是否为 JSON。 以类似的方式,我需要检查 XML 内容。

假设我有下面给出的字符串:

const string = '<config xmlns="http://tail-f.com/ns/config/1.0">
   <devices xmlns="http://tail-f.com/ns/ncs">
      <global-settings>
         <read-timeout>120</read-timeout>

     </global-settings>
</devices>
</config>';

所以我需要检查上面的内容是XML内容还是没有使用node.js。 有人可以帮我解决这个问题吗?

在 XML 中,第一个字符将始终为“<”。 在 JSON 中,除了普通情况外,第一个非空格字符将是“[”或“{”。 所以很容易在它们之间做出决定。

之后,要确定它是格式良好的 XML 还是格式良好的 JSON,您需要将其通过解析器。

(顺便说一句,我们还没有在 node.js 上找到一个 XML 解析器,它在处理边缘情况方面具有非常高的一致性。但是有很多对于实际目的来说已经足够好了。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM