【发布时间】:2014-08-21 13:03:04
【问题描述】:
我正在尝试为我的 xml 字符串手动添加一些前缀,为此我需要一个我似乎无法找到的特定 java 表达式,基本上这是我的字符串:
<?xml version="1.0" encoding="UTF-8"?>
<mediabericht xmlns:mb="http://www.mediabericht.org"><inhoud>Randominhoud 22</inhoud><netwerk>Twitter</netwerk><datum>1408625886036</datum><film>Gladiator</film></mediabericht>
我想为我的元素添加前缀,所以它应该是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<mb:mediabericht xmlns:mb="http://www.mediabericht.org"><mb:inhoud>Randominhoud 22</mb:inhoud><mb:netwerk>Twitter</mb:netwerk><mb:datum>1408625886036</mb:datum><mb:film>Gladiator</mb:film></mb:mediabericht>
我想做一些替换,但到目前为止我没有运气
我需要解决的第一个正则表达式是 < but not <? or </ 并使用 replaceAll 函数将它们替换为 <mb:(前缀)
然后我处理的第二个替换:
String prefixedString = xmlString.replaceAll("</", "</mb:");
【问题讨论】:
-
要在
<mediabericht前面加空格吗? -
呃,不,我为什么要那样做?
-
我找不到输入和预期输出的差异。
-
抱歉我没有编辑第二个,它应该有前缀
-
正确的方法是解析 XML 树,而不是正则表达式。