php小编鱼仔带来了一篇关于java中replaceall()方法转义特殊字符的问答文章。java中的replaceall()方法是用于替换字符串中的指定字符或字符序列,但在处理特殊字符时可能会出现一些问题。本文将解答如何正确转义特殊字符以及避免一些常见的错误,帮助读者更好地理解和应用这个方法。
问题内容
我正在使用 java replaceall() 方法来转义换行符
string comment = "ddnfa \n \r \tdnfadsf ' \r t ";
comment = comment.replaceall("(\\n|\\r|\\t)","\\\\$1");
system.out.println(comment);
但是上面的代码仍然插入新行。
有没有办法输出完全相同的注释(即使用 \n 和 \r 而不是插入新行)?
更新:
本文档主要讲述的是Android数据格式解析对象JSON用法;JSON可以将Java对象转成json格式的字符串,可以将json字符串转换成Java。比XML更轻量级,Json使用起来比较轻便和简单。JSON数据格式,在Android中被广泛运用于客户端和服务器通信,在网络数据传输与解析时非常方便。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
立即学习“Java免费学习笔记(深入)”;
我最终使用:
comment = comment.replaceAll("\\n","\\\\n")
.replaceAll("\\r","\\\\r")
.replaceAll("\\t","\\\\t");解决方法
您必须逐一进行,因为换行符 u+000a 与两个字符转义序列 \n 无关:
comment = comment.replaceAll("\n","\\\\n");
comment = comment.replaceAll("\r","\\\\r");
comment = comment.replaceAll("\t","\\\\t");










