java反斜杠\的用法比较怪异,分为两种场景:

1. 正则表达式

匹配点(.) 或  {、[、(、?、$、^ 、+和 * 这些特殊符号要要前加双斜框,表示字符类的时候也是用双斜杠譬如(\\s[空白符], \\S, \\d, \\D, \\w, \\W),匹配 \ 时要用四斜杠

2. 字符串

譬如\n, \t, \r 回车换行tap之类的只要一个反斜杠即可,在字符串中表示一个反斜杠只用两个反斜杠即可 \\

顺带提一下String.replace 和replaceAll的区别,前者是匹配字符串替换,后者是匹配正则表达式替换

相同点是:都是对源字符串的全部替换

String s ="sdf\\a\\aa";
System.out.println(s);
System.out.println(s.replaceAll("\\\\", "\\\\\\\\"));
System.out.println(s.replace("\\", "\\\\"));

这两种替换的结果都是 sdf\\a\\aa

源码剖析:

public String replaceAll(String regex, String replacement) {
        return Pattern.compile(regex).matcher(this).replaceAll(replacement);
    }

public String replace(CharSequence target, CharSequence replacement) {
        return Pattern.compile(target.toString(), Pattern.LITERAL).matcher(
                this).replaceAll(Matcher.quoteReplacement(replacement.toString()));
    }

replace比replaceall多了quoteReplacement,这个函数就是把字符串中出现\或者$的前面再添加一个\, 这样的话s.replace("\\", "\\\\")其实后台处理也是八个\

最简单的就是这样记住,在正则表达式中用4个\表示一个\

java反斜杠\的用法相关推荐

  1. java中反斜杠的用法_java反斜杠\的用法

    java反斜杠\的用法比较怪异,分为两种场景: 1. 正则表达式 匹配点(.) 或  {.[.(.?.$.^ .+和 * 这些特殊符号要要前加双斜框,表示字符类的时候也是用双斜杠譬如(\\s[空白符] ...

  2. java中斜杠的用法_java培训学习中反斜杠“\”的用法

    java反斜杠\的用法比较怪异,分为两种场景: 1. 正则表达式 匹配点(.) 或 {.[.(.?.$.^ .+和 * 这些特殊符号要要前加双斜框,表示字符类的时候也是用双斜杠譬如(\\s[空白符], ...

  3. java 反斜杠_java反斜杠\的用法 | 学步园

    java反斜杠\的用法比较怪异,分为两种场景: 1. 正则表达式 匹配点(.) 或  {.[.(.?.$.^ .+和 * 这些特殊符号要要前加双斜框,表示字符类的时候也是用双斜杠譬如(\\s[空白符] ...

  4. python 文件读取错误之FileNotFoundError: [Errno 2] No such file or directory:,顺便学习斜杠/和反斜杠\的用法

    python 文件读取错误之FileNotFoundError: [Errno 2] No such file or directory:,顺便学习斜杠/和反斜杠\的用法: 最近学习文件读取和中文分词 ...

  5. 路径中斜杠和反斜杠的用法

    路径中斜杠和反斜杠的用法 Unix使用斜杆/ 作为路径分隔符,而web应用最新使用在Unix系统上面,所以目前所有的网络地址都采用 斜杆/ 作为分隔符. Windows由于使用 斜杆/ 作为DOS命令 ...

  6. 正斜杠和反斜杠的用法

    1.什么是正斜杠和反斜杠? 写一个八字,左边部分就是正斜杠"/",右边部分就是反斜杠"\".写八字的时候,先写撇(丿),再写捺,也符合我们日常先正面后反面的使用 ...

  7. linux java 反斜杠_每日linux命令学习-引用符号(反斜杠\,单引号'',双引号)...

    引用符号在解析器中保护特殊元字符和参数扩展,其使用方法有3种:反斜杠(\),单引号(''),双引号(""). 单引号和双引号必须匹配使用,均可在解析器中保护特殊元字符和通配符,但是 ...

  8. Python 基础篇-正斜杠(/)和反斜杠(\)的用法

    今天为大家讲一讲正反斜杠的常见应用:一个就是路径里的应用,还有就是反斜杠在正则表达式里的不同. 路径上的应用 首先告诉大家,用于路径上,python是不区分正("/")反(&quo ...

  9. java反斜杠_如何在字符串中使用反斜杠(\)?

    (请参阅答案末尾的ES2015更新.) 您已经标记的问题都string和regex. 在JavaScript中,反斜杠在字符串文字和正则表达式中都有特殊含义.如果你想在字符串或正则表达式中使用实际的反 ...

最新文章

  1. Boost C++ 库
  2. 安卓按键精灵_月薪3w的按键精灵大神都是从这个命令开始起步的
  3. Puppeteer爬虫初探
  4. 线程五种状态(新建、就绪、运行、阻塞、死亡)
  5. mysql user 用户名长度_为什么注册的用户账号长度不能超过5个字符
  6. Mybatis的update方法
  7. linux 哪个进程在使用串口_Linux内核的整体架构
  8. 利用递归求某数的阶乘——C/C++
  9. Vue封装hbuilder热更新
  10. DB2表结构DDL脚本导出
  11. 多php共用一个mysqli连接,在pHP中使用MySQLi连接到多个数据库
  12. php页面的特点_带你认识PHP的四大特性八大优势
  13. python元祖切片_Python
  14. python脱离依赖运行py文件_将一个python.py文件拆分为多个相互依赖的文件
  15. Servlet/JSP面试题目-----近期总结
  16. 疯狂python讲义这本书怎么样_疯狂Python讲义(读书笔记)
  17. python tokenize()_tokenize (Language) – Python 中文开发手册 - Break易站
  18. 数组的过滤方法filter()
  19. mysql 用sql语句创建数据库和表
  20. 大公司病,太TM形象了!

热门文章

  1. 三十九、Java集合中的HashSet和TreeSet
  2. ICLR 2022入选论文线上分享预告:一作解读,不容错过
  3. 免费GPU支持!口罩识别、安全帽识别算法赛同步开启,丰厚奖品等你来战!
  4. 你的 CRF 层的学习率可能不够大
  5. 爬虫笔记7正则表达式与re库
  6. 机器学习理论《统计学习方法》学习笔记:奇异值分解(SVD)
  7. 机器学习理论《统计学习方法》学习笔记:第十章 隐马尔可夫模型(HMM)
  8. AI学习与进阶实践-基于行业价值的AI学习与进阶路径
  9. 【教程】Jupyter notebook基本使用教程
  10. 电脑声音推送到手机话筒_一台电脑是不是就能做在线教育直播了?