Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
XML模式上的Java字符串替换_Java_Regex_String_Replace_Replaceall - Fatal编程技术网

XML模式上的Java字符串替换

XML模式上的Java字符串替换,java,regex,string,replace,replaceall,Java,Regex,String,Replace,Replaceall,我有以下XML字符串: String XML = "<TEST><MESSAGEID>5435646578</MESSAGEID></TEST>"; stringxml=“5435646578”; xml字符串中的数字一直在变化,因此我想进行字符串替换,并将xml转换为 <TEST><MESSAGEID></MESSAGEID></TEST> 我正在寻找这样的方法,但我不确定如何获得repl

我有以下XML字符串:

String XML = "<TEST><MESSAGEID>5435646578</MESSAGEID></TEST>";
stringxml=“5435646578”;
xml字符串中的数字一直在变化,因此我想进行字符串替换,并将xml转换为

<TEST><MESSAGEID></MESSAGEID></TEST>

我正在寻找这样的方法,但我不确定如何获得replaceAll方法中第一个参数的模式

公共类HelloWorld{
公共静态void main(字符串[]args){
字符串XML=“5435646578”;
字符串newStr=XML.replaceAll(“*”,“”);
System.out.println(newStr);
}
}

模式
[0-9]+
可以工作。如果输入的结构可以更改,您可能希望改用XML解析器。

模式
[0-9]+
可以工作。如果输入的结构可以更改,您可能希望改用XML解析器。

我将使用字母数字模式,除非您完全确定它只是数字模式:

//字母数字
字符串newStr=uotmXML.replaceAll(“\w+”,”);
//数字
字符串newStr=uotmXML.replaceAll(“\d+”,”);

我会使用字母数字模式,除非您完全确定它只是数字:

//字母数字
字符串newStr=uotmXML.replaceAll(“\w+”,”);
//数字
字符串newStr=uotmXML.replaceAll(“\d+”,”);

如果保证格式不会更改,我将使用regex
^(\d+)$
查找数字(在第1组中)。否则,我将使用适当的XML库,如JAXB或Jackson。

如果保证格式不会更改,我将使用regex
^(\d+)$
查找数字(在组1中)。否则,我会使用一个合适的XML库,比如JAXB或Jackson。

尝试用
uotmXML中的
*
替换你的
*
。用
uotmXML中的
*
替换你的
*,…
尝试用
uotmXML中的
*
替换你的
*/code>。用
[^这对我有效。如果您想将其作为答案而不是评论添加,我将接受此答案。尝试在
uotmXML中替换您的
*
。将(“*”
替换为
[^这对我有效。如果您想将其作为答案而不是评论添加,我将接受此答案。