gpt4 book ai didi

java.util.regex.PatternSyntaxException - 使用 split ("\\"时);

转载 作者:行者123 更新时间:2023-12-01 07:24:12 25 4
gpt4 key购买 nike

我正在解决this problem以我自己的方式。我正在尝试将文件路径拆分为云端硬盘、文件夹和文件名,全部拆分为一个数组。

Complete class. (Github)

问题:

String regex = "\\";
String [] divisions = path.split (regex);

这给了我一个 java.util.regex.PatternSyntaxException。我查了一下wiki并找到[\b]

String regex = "[\b]";
String [] divisions = path.split (regex);

这行不通。它不会引发异常,也不会根据退格键分割我的文件路径。

输入:

► Enter path -- 
C:\User\Admin\NekedGaben.jpg

输出:

→ Path = C:\User\Admin\NekedGaben.jpg
→ File name = C:\User\Admin\NekedGaben
→ Extension = .jpg

我的问题:

  1. 为什么 "\\" 会抛出异常,而 "[\b]" 不会?
  2. 为什么 split() 不分割 Path 字符串?

最佳答案

您应该在 Java 正则表达式中使用双重转义,即:

String regex = "\\\\";

或者使用静态Pattern.quote(String)方法:

String regex = Pattern.quote("\\");

关于java.util.regex.PatternSyntaxException - 使用 split ("\\"时);,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28283148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com