我有一个类似于
的xml字符串<parent><child>value</child></parent>
我正在尝试编写与此字符串匹配的正则表达式。特技是,有时输入中有随机的新行和空格。
例如:
<parent>
<child>value</child></parent>
如果输入xml有父,子和值,我希望能够识别使用正则表达式。
到目前为止,我已经尝试过:
“<parent>\n\s*<child>value<\/child>”
但这似乎不匹配。我不明白如何忽略表达式中的所有空格和所有新行。
解: 因此,当您使用旧系统时,例如在医疗保健工具中,您可能经常需要匹配xml请求,而且很可能......通过试验和错误,这对我有用:
^<parent>\s*<child>value[\S\s]*
答案 0 :(得分:3)
您不应该使用正则表达式解析XML。而是使用XML解析器,available in JavaScript:
var sMyString = '<parent><child>value</child></parent>';
var oDOM = new DOMParser().parseFromString(sMyString, "text/xml");
var txt = oDOM.documentElement.textContent;
console.log(txt);
此解析器知道如何处理空白区域。请注意,标记中也可能出现空格,例如<parent >