码迷,mamicode.com
首页 > 编程语言 > 详细

Java 正则表达式 转义字符

时间:2020-06-19 14:14:26      阅读:80      评论:0      收藏:0      [点我收藏+]

标签:height   推荐一个   tac   idt   reg   匹配   语法   png   换行符   

 

一、这篇文章写的很好,值得看看
两个重点:
1、两次转义
(1)Java 转义(具体规则待学习)
Java 中的普通字符串,需要经过 Java 的转义
(2)正则转义(具体规则待学习)
Java 代码中,正则中的普通字符串,需要经过两次转义,一次 java 转义,一次正则转义
技巧:
在 Java 中写正则时,可以先写出目标表达式,即正常的正则语法,不考虑编程语言。然后,再考虑要生成一个这样的目标表达式,需要经过怎样的 Java 转义,反推出最终的正则字符串(最终写在代码里的)应该怎么写
2、内存中(比较时,是在内存中,而我们写的代码,在磁盘中)
技术图片

 

 

二、这个问题和高赞答案也很不错,值得反复揣摩
关于为什么 Pattern p = Pattern.compile("\\\n"); 这个会报 redundant character escape 警告,有点难理解,记录一下自己现在的理解
\\\n 先按照 Java 转义语法去转义,前两个 \\ 会转义成一个 \,后两个 \n 会转义成一个换行符,所以正则收到的是一个 \ 加一个换行符,而前面那个 \ 是没有意义的(注意,这时候正则收到的不是 \\n,因为 \n 已经被 Java 转义成了换行符)

 

 

三、记忆一个典型例子

在 Java 中,要用正则匹配一个 \,需要 \\\\

 

四、推荐一个超级好用的在线正则网站

可以随写随测

https://regex101.com/

技术图片

 

 

 

Java 正则表达式 转义字符

标签:height   推荐一个   tac   idt   reg   匹配   语法   png   换行符   

原文地址:https://www.cnblogs.com/stone94/p/13162337.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!