Java 代码需要使用转义符的地方
1、正则表达式特殊字符
Java 代码中使用到正则表达式里的特殊字符需要使用转义符 \ 进行转义
. ? * + ! ^ $ [ ] ( ) \
因为反斜线 \ 也是特殊字符,所以转义需双反斜线 \\,否则会报 java.util.regex.PatternSyntaxException 异常。
public static void main(String[] args) {
String string = "435212.jpg";
if (string.contains(".")) {
System.out.println("包含一个点");
}
String suffix = string.split("\\.")[1];
System.out.println(suffix);
}
上面代码的运行结果是:
可以看出 contains 方法不需要转义,而 split 方法就需要转义了,所以 JDK API 中只有参数是正则表达式的地方才需要转义。
java.lang.String 类中参数是正则表达式的方法有:
public boolean matches(String regex);
public String replaceFirst(String regex, String replacement);
public String replaceAll(String regex, String replacement);
public String[] split(String regex);
public String[] split(String regex, int limit);
将List通过正则转换为SQL中IN条件字符串(使用了replaceAll):
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("aaaa");
list.add("bbbb");
String str = "('" + list.toString().replaceAll("\\[|\\]|\\s", "").replaceAll(",", "','") + "')";
System.out.println(str);
}
2、文件路径的写法
Windows下路径写法,间隔符使用双反斜线 \\
C:\\Users\\QPING\\Desktop\\JavaScript\\2.html
Linux下路径写法,间隔符用斜线 /
/site/images/qiyinwang/userid/xxxxx.jpg
或者在Java中可以直接使用 File.separator ,可以自动识别为对应操作系统下的文件间隔符
String path = "D:"+File.separator+"tempPicture.jpg";//文件保存路径 D:\tempPicture.jpg
String path = File.separator+"site"+File.separator+"tempPicture.jpg";//文件保存路径 /site/tempPicture.jpg
Java 代码需要使用转义符的地方的更多相关文章
- java转义符和正则表达式转义符
举例来说,连续相同的3位数字的正则表达式的标准语法是: ([\d])\1{2} 但是如果在java代码中这么写,就会出现语法错误,如下: String regEx = "([\d])\1{2 ...
- Java转义符\\|
http://blog.csdn.net/stewen_001/article/details/22871737 看一段程序 String t = "a||b||c||d"; St ...
- JAVA 中转义符的理解
生物信息中有时候会遇到JAVA写的程序,今天阅读源码的时候发现对于正则中的转义符不好理解,后来查资料后终于弄明白了,这里详细说明一下: 字符串的表示有三种方法:1.直接单字符,例如"A&qu ...
- java 转义符
java 转义符 CreationTime--2018年7月12日15点33分 Author:Marydon 1.常见转义符 转义符在java中有特殊含义 转义字符 特殊含义 \b 退格( ...
- java基础之转义符、数据类型
一. 转义符 1.\n \n的作用是换行,也就是和键盘上的回车键相同 2.\t \t的作用是制表,就是以八个空格为一个单位,当不足八个时会自动补齐八个,如asd\tfgh,那么输出的将会是 . 3. ...
- 浅谈Java转义符\\|
看一段程序 String t = "a||b||c||d"; String[] temp = t.split("\\|\\|"); System.out.pri ...
- Java语言基础---转义符
转义符 转义符使用“\”表示.常用转义符如下: 1.‘\n’回车 2.‘\t’制表位字符,一个表示向右跳8-10个字符 3.‘\\’表示’\’ 4.‘\’’表示单引号 5.‘\’’’表示双引号 6.‘ ...
- 移动端造json假数据时的坑(转义符问题)
最近在 Json 数据的解析上碰到了一些坑,特此记录一下. 正文 迭代开发中,经常出现服务端接口还没开发完成的情况,所以经常需要移动端自己在本地造一些假数据. emmm,虽然说好像造假数据也不是什么很 ...
- 使用Java代码配置MyBatis Generator
使用MyBatis Generator生成器时,有时候没办法使用xml型的配置文件,比如将Maven项目设置成pom打包方式(<packaging>pom</packaging> ...
随机推荐
- CSS: Grid homework redact.
The web homework: Finished design: (I use six block with different color to show this homework and I ...
- 微信小程序自制提示框(具有输入文本功能)
https://blog.csdn.net/qq_41681675/article/details/81005561
- 定时任务 spring @Scheduled注解
使用spring @Scheduled注解执行定时任务: 运行!!! 关于Cron表达式(转载) 表达式网站生成: http://cron.qqe2.com/ 直接点击 cronExpression ...
- Tomcat-servlet基础
1.1 概念 运行在服务器上的小程序 定义了浏览器访问到(tomact)的规则 1.2 步骤 1.3 执行原理 1 当服务器 接收到客户端浏览器的请求后 会解析url地址 获得url路径 ...
- 学习linux—— VMware 安装 ubantu 18 如何连接wifi
1 适配器设置 修改本地连接 2 修改VMware的虚拟网络编辑器 3 虚拟机设置
- java集合框架(1) hashMap 简单使用以及深度分析(转)
java.util 类 HashMap<K,V>java.lang.Object java.util.AbstractMap<K,V> java.util.Hash ...
- FortiGate 5.2/5.4 SSLVPN建立
1.定义源IP池 即用户通过sslvpn拨号成功后获取到的IP地址. 2.定义路由地址 即用户通过sslvpn拨号成功后允许获取到的路由表. 3.建立sslvpn portal 4.定义用户和用户组 ...
- vue 和 react 路由跳转和传参
react 1 .跳转方式加传参 this.props.history.push({ //地址 pathname: '/film/Details', //路由传参 ...
- 在python学习时间过程中,你会不断发现需要解决的问题,更多需要连接未知,这时候到哪里去查阅资料呢?
1.safari online book https://www.safaribooksonline.com 知乎上有人问,送程序员什么礼物好,其中一个答案就是safari online.编程的英文书 ...
- 保存一份自己常用的packjson
这里是一份专门针对react的插件配置, 有: es5的转换器,有ie的promise垫片,有蚂蚁金服的anth,还有用于消息通信的pubsub订阅发布系统,虽然现在不用了.... 用于发请求的axi ...