Java xml字符串中的ReplaceAll正则表达式

Java xml字符串中的ReplaceAll正则表达式,java,xml,regex,Java,Xml,Regex,我试图手动为xml字符串添加一些前缀,为此我需要一个我似乎找不到的特定java表达式,基本上这是我的字符串: <?xml version="1.0" encoding="UTF-8"?> <mediabericht xmlns:mb="http://www.mediabericht.org"><inhoud>Randominhoud 22</inhoud><netwerk>Twitter</netwerk><datu

我试图手动为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>

Randominhoud 22推特1408625886036角斗士
我想给我的元素添加前缀,所以应该如下所示:

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

Randominhoud 22推特1408625886036角斗士
我想换几件衣服,但到目前为止我运气不好

我需要解决的第一个正则表达式是
<,但不是
我需要解决的第一个正则表达式是
<,但不是
我需要解决的第一个正则表达式是
<,但不是
我需要解决的第一个正则表达式是
<,但不是
我需要解决的第一个正则表达式是
,但不是,您可以尝试使用它

Lookaround(零长度断言)实际上匹配字符,但随后放弃匹配,只返回结果:匹配或不匹配

示例代码:

System.out.println("<abc></abc>".replaceAll("(?<=<)(?!\\/|\\?)", "mb:"));  
你可以试试看

Lookaround(零长度断言)实际上匹配字符,但随后放弃匹配,只返回结果:匹配或不匹配

示例代码:

System.out.println("<abc></abc>".replaceAll("(?<=<)(?!\\/|\\?)", "mb:"));  
你可以试试看

Lookaround(零长度断言)实际上匹配字符,但随后放弃匹配,只返回结果:匹配或不匹配

示例代码:

System.out.println("<abc></abc>".replaceAll("(?<=<)(?!\\/|\\?)", "mb:"));  
你可以试试看

Lookaround(零长度断言)实际上匹配字符,但随后放弃匹配,只返回结果:匹配或不匹配

示例代码:

System.out.println("<abc></abc>".replaceAll("(?<=<)(?!\\/|\\?)", "mb:"));  

只需一个regexp即可完成所有操作:

String prefixedString = xmlString.replaceAll("(</?)([^?])", "$1mb:$2");

String prefixedString=xmlString.replaceAll(“(您可以用一个regexp:

String prefixedString = xmlString.replaceAll("(</?)([^?])", "$1mb:$2");

String prefixedString=xmlString.replaceAll(“(您可以用一个regexp:

String prefixedString = xmlString.replaceAll("(</?)([^?])", "$1mb:$2");

String prefixedString=xmlString.replaceAll(“(您可以用一个regexp:

String prefixedString = xmlString.replaceAll("(</?)([^?])", "$1mb:$2");



String prefixedString=xmlString.replaceAll(“(你想在
之前添加空格吗?不,我为什么要这样做?我找不到输入和预期输出之间的差异。抱歉,我没有编辑第二个,它应该有前缀。正确的方法是解析XML树,而不是正则表达式。你想在
之前添加空格吗?不,我为什么要这样做?我可以找不到输入和预期输出之间的差异。抱歉,我没有编辑第二个,它应该有前缀。正确的方法是解析XML树,而不是使用正则表达式。是否要在
之前添加空格?不,我为什么要这样做?我找不到输入和预期输出之间的差异。抱歉我没有编辑第二个,它应该有前缀。正确的方法是解析XML树,而不是使用正则表达式。你想在
之前添加空格吗?不,我为什么要这样做?我找不到输入和预期输出之间的差异。抱歉,我没有编辑第二个,它应该有正确的前缀要做到这一点,需要对XML树进行解析,而不是使用正则表达式。在替换此错误后,它终于起作用了,非常感谢!在替换此错误后,它终于起作用了,非常感谢!在替换此错误后,它终于起作用了,非常感谢!感谢您的解释,我真的应该花一个下午的时间来学习模式,到目前为止,我一直都在查找或要求提供模式stackoverflow@user您可以简单地使用此
(?@AvinashRaj是的,这也是正确的。很好。或者保持简单
谢谢你的解释,我真的应该花一个下午的时间学习模式,到目前为止,我一直在查找或要求使用它们stackoverflow@user您可以简单地使用此
(?@AvinashRaj是的,这也是正确的。很好。或者保持简单
谢谢你的解释,我真的应该花一个下午的时间学习模式,到目前为止,我一直在查找或要求使用它们stackoverflow@user您可以简单地使用此
(?@AvinashRaj是的,这也是正确的。很好。或者保持简单
谢谢你的解释,我真的应该花一个下午的时间学习模式,到目前为止,我一直在查找或要求使用它们stackoverflow@user您可以简单地使用此
(?@AvinashRaj是的,这也是正确的。很好。或者保持简单
EDIT:Nvm这个工作,谢谢,这使它更简单。它:Nvm这个工作,谢谢,这使它更简单。它:Nvm这个工作,谢谢,这使它更简单。它:Nvm这个工作,谢谢,这使它更简单