栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java 代码中需要使用转义符的地方

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 代码中需要使用转义符的地方

文章目录
    • 1. 正则表达式转义
    • 2. 文件路径转义


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 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,可以自动识别为对应操作系统下的文件间隔符:

//文件保存路径 D:tempPicture.jpg
String path = "D:"+File.separator+"tempPicture.jpg";
//文件保存路径 /site/tempPicture.jpg
String path = File.separator+"site"+File.separator+"tempPicture.jpg";
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/591769.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号