一个说于replaceAll替换"\n"的问题??

shineapple 2007-05-29 12:26:19
String str = "1\n2";

System.out.println(str.replaceAll("\n","--"));

System.out.println(str.replaceAll("\\n","--"));

System.out.println(str.replaceAll("\\\n","--"));

上面3个语句都能替换掉"\n",前2个我还能想的通,就第三个我怎么也想不通,如果说"\\\n",到正则表达式为"\\n",那么"\\\\n"的正则表达式,启不不是和"\\\n"一样,还请各位DX解释下下,谢谢了
...全文
861 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
shineapple 2007-06-02
  • 打赏
  • 举报
回复
不是吧,还是没人回答么?
shineapple 2007-05-30
  • 打赏
  • 举报
回复
那应该是匹配"\"和"n",而不是回车"\n"符了
衣犹未尽 2007-05-30
  • 打赏
  • 举报
回复
可能是因为'\\'匹配'\',然后又是'\\'匹配'\',最后剩下'\n',个人意见!
shineapple 2007-05-30
  • 打赏
  • 举报
回复
谢谢楼上的回答,可是还是没能说清楚.....

哪位在详细的解释下啊,谢谢了
assre 2007-05-30
  • 打赏
  • 举报
回复
Pattern p = Pattern.compile("\ne");
System.out.println("pattern: "+p.pattern());


pattern:
e
assre 2007-05-30
  • 打赏
  • 举报
回复
Pattern p = Pattern.compile("\\ne");
System.out.println("pattern: "+p.pattern());

pattern: \ne
assre 2007-05-30
  • 打赏
  • 举报
回复
Pattern p = Pattern.compile("\\\ne");
System.out.println("pattern: "+p.pattern());

输出: pattern: \
e

而 1\n2表示的是 1 回车 2
难道是bug?
shineapple 2007-05-30
  • 打赏
  • 举报
回复
自己顶起来先..............

62,634

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧