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> ...
随机推荐
- 数据库设计,表与表的关系,多对多。Many-To-Many(3)
多对多:两个数据表里的每条记录都可以和另一个表里的任意数量的记录(或者没记录)相关. 多对多关系是关系数据库中两个表之间的一种关系, 该关系中第一个表中的一个行可以与第二个表中的一个或多个行相关.第二 ...
- Python爬虫中文小说网点查找小说并且保存到txt(含中文乱码处理方法)
从某些网站看小说的时候经常出现垃圾广告,一气之下写个爬虫,把小说链接抓取下来保存到txt,用requests_html全部搞定,代码简单,容易上手. 中间遇到最大的问题就是编码问题,第一抓取下来的小说 ...
- 通过windows远程桌面连接CentOS系统
前提: CentOS安装桌面,如果无桌面,请执行 # yum -y groups install "GNOME Desktop" # startx 1 2 配置源 # yum in ...
- maven 项目打包到本地仓库并且推送到私服仓库
首先进入到项目文件夹下,然后进入cmd命令窗口,第一步先clean一下,输入命令 mvn clean. 第二步打包到本地,输入命令mvn clean package -Dmaven.test.skip ...
- 中间件RabbitMQ之运维篇
一.RabbtMQ简介 RabbitMQ的官方站: http:/://www.rabbitmq.com/ rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业 ...
- ExecuteReader()获得数据
ExecuteReader用于实现只进只读的高效数据查询.ExecuteReader:返回一个SqlDataReader对象,可以通过这个对象来检查查询结果,它提供了只进只读的执行方式,即从结果中读取 ...
- Agile PLM 开发中AgileAPI类型对应控制台分类说明
1) 分类中的一级大类PLM后台管理的控制台中,每个分类中的一级大类都对应AgileAPI中一个类型 IServiceRequest对应产品服务请求,表为:psrIPrice对应价格,表为:pr ...
- thinkphp 视图(三)系统变量——原生标签
查看系统变量 dump($_SERVER); 在view中获取服务器变量 <p>{$Think.server.HTTP_HOST}</p> 获取env变量 status=dev ...
- Vue 的生命周期图
- MySQL开发——【字段类型、约束】
创建数据表 基本语法: create table 数据表名称( 字段名称 字段类型 字段约束, ... )[表选项]; 字段类型 整数型 ,有符号型,可以表示 ,有符号型,可以表示 mediumint ...