浏览 1363 次
锁定老帖子 主题:关于java中对于‘$’进行正则替换的疑惑
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-01-26
最后修改:2011-01-26
sqlstr = str.replaceAll("\\Q$\\E", "\\\\\\$"); 大致查了一下资料: \Q 在non-word 字符前加上\,直到\E 这样看来,是想把匹配串中的$符号前面都手动的加上\$,然后再用\\$来替换被匹配串中的$符号.... 总的来说,不是很理解,希望大家能够指点一下,谢谢 --------------------- 得到某大哥指点了 \Q...\E 适合用于:表达式中需要比较长的普通文本,而其中包含了特殊符号。 举例 表达式 说明 \Q(a+b)*3\E 可匹配文本 "(a+b)*3"。 \(a\+b\)\*3 如果不使用 \Q...\E 进行转义,则对每个特殊符号进行转义。 看来\Q....\E是在其包含的字符串中的特殊字符前加转义了,原来non-word 字符是指特殊字符. 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |