我正在将JSON数组转换为XML字符串:

JSONArray json = new JSONArray(response);xml = XML.toString(json);

不幸的是,结果包含像
<24x24>blah</24x24>

之后,我想用SAXBuilder创建一个“真实的” XML节点,它会产生以下错误:

The content beginning "<2" is not legal markup. Perhaps the "2" (&#32;) character should be a letter.

有人知道如何从XML字符串中删除此非法标记吗?
也许用<24x24>blah</24x24>替换<t24x24>blah</t24x24>的正则表达式?

谢谢!

最佳答案

您可以尝试将String.replaceAll()方法与正则表达式一起使用。 Live demo

System.out.println("<24x24>blah</24x24>".replaceAll("(<\\/?)(?=\\d)", "$1t"));


输出:

<t24x24>blah</t24x24>

关于java - 从xml字符串中删除非法标记(以数字开头的节点),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24935437/

10-10 06:46