考虑以下代码
String unformattedXml ="<root> <?xml version=\"1.0\" encoding=\"UTF-8\"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV=";
unformattedXml = unformattedXml.replaceAll("<?xml version=\"1.0\" encoding=\"UTF-8\"?>","");
System.out.println(unformattedXml);
输出是:
<root> <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV=
正如您必须已经理解的那样,我想从字符串中删除xml标记,但不知怎的replaceAll
函数对我没有帮助。
有什么建议吗?
谢谢!
答案 0 :(得分:6)
您需要拨打replace
而不是replaceAll
。后者将输入字符串解析为正则表达式,使?
之类的字符被视为正则表达式元字符:
unformattedXml = unformattedXml.replace(
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>", "");
答案 1 :(得分:1)
String#replaceAll将正则表达式作为第一个参数 - 尝试使用replace。
答案 2 :(得分:0)
您可以使用replace()代替replaceAll()
column
.Template(@<text></text>).Width(90)
.ClientTemplate("#= MyDeleteTemplate(CsvSubmittalID) #");
.ClientTemplate("<div style='text-align:center'><a class=ActionbuttonDelete href=\"" + Url.Action("DeleteCsvRow", "Project") + "/#=CsvSubmittalID#\"> [Delete] </a></div>");
.ClientTemplate("#= MyDeleteTemplate(CsvSubmittalID)#", <div style='text-align:center'><a class=ActionbuttonDelete [Delete] </a></div>");