将"a.b.c.d"中的点符号转换成反斜杠 我这样写,结果是错误的。"a.b.c.d".replaceAll("\\.", "\\");答案是 "a.b.c.d".replaceAll("\\.", "\\\\");为什么是4个斜杠啊,想不通啊。请前辈们仔细讲下吧。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 此回复为自动发出,仅用于显示而已,并无任何其他特殊作用楼主【dabins】截止到2008-07-01 21:01:48的历史汇总数据(不包括此帖):发帖的总数量:21 发帖的总分数:400 结贴的总数量:7 结贴的总分数:140 无满意结贴数:1 无满意结贴分:20 未结的帖子数:14 未结的总分数:260 结贴的百分比:33.33 % 结分的百分比:35.00 % 无满意结贴率:14.29 % 无满意结分率:14.29 % 楼主该结一些帖子了 正则表达式\.用来匹配点字符;序列 '\\' 用来匹配 "\".将"a.b.c.d"中的点符号转换成反斜杠,怎么不这么写啊?"a.b.c.d".replaceAll("\.", "\\"); 如果想避开正则表达式,用replace就行"a.b.c.d".replace(".", "\\"); 可以完成同样的功能个人感觉,这则表达式挺讨厌的,如果不是要读别人的程序,我真不愿意学这玩意儿。我个人仅在迫不得已时使用最简单的正则表达式 是的,如果对正则表达式不是很熟悉的话,建议采用 replace,大家都喜欢用 replaceAll估计是被方法名给迷惑了,实际上两个都是全部替换的。实际上这两个方法的内部实现都是采用正则表达式的,只是前者使用了正则表达式的字面模式(所谓的字面模式就是把所有的字符都看成是普通字符,不看成正则表达式中专用的字符)来进行替换的,而后面的那个是基于正则表达式的,可以用于完成一些比较复杂的替换。 十万火急,人家给我出的面试题,求高手 java数组问题 带*的字符串匹配问题? 如何设置窗口独占? 成都的朋友,大家好有事请教,自己心里实在是没底, Applet实现打印的问题 输入输出流那部分我总是糊度,怎么办 connection rollback 事物回滚的作用 请大家帮忙看看理解对与否 套壳是什么意思 [求助] 请详细比较下replace() 和 replaceAll() 吧, 真的很不理解。 JAVA面试题解惑系列(八)——聊聊基本类型(内置类型)
楼主【dabins】截止到2008-07-01 21:01:48的历史汇总数据(不包括此帖):
发帖的总数量:21 发帖的总分数:400
结贴的总数量:7 结贴的总分数:140
无满意结贴数:1 无满意结贴分:20
未结的帖子数:14 未结的总分数:260
结贴的百分比:33.33 % 结分的百分比:35.00 %
无满意结贴率:14.29 % 无满意结分率:14.29 %
楼主该结一些帖子了
将"a.b.c.d"中的点符号转换成反斜杠,怎么不这么写啊?"a.b.c.d".replaceAll("\.", "\\");
是的,如果对正则表达式不是很熟悉的话,建议采用 replace,大家都喜欢用 replaceAll
估计是被方法名给迷惑了,实际上两个都是全部替换的。实际上这两个方法的内部实现都是
采用正则表达式的,只是前者使用了正则表达式的字面模式(所谓的字面模式就是把所有的
字符都看成是普通字符,不看成正则表达式中专用的字符)来进行替换的,而后面的那个是
基于正则表达式的,可以用于完成一些比较复杂的替换。