一个非常愚蠢的问题,我知道“和.都是特殊字符,但是为什么在使用split()函数时会有差异?
代码如下
String.split("\"");
String.split("\\.");
它们都有效,但为什么第一行代码只有一个“\”,第二行有两个?
编辑: 如果我这样做会发生什么
String.split("\\"");
结果是否相同
String.split("\"");
最佳答案
在第一个示例中,您要转义 "
(这不是特殊的正则表达式字符,因此它实际上与 string.split(Character.toString('"' ));
) - 也就是说,您需要转义 "
以将 "
放入 String
- 您也可以编写string.split(""+ '"');
。在第二个示例中,您要转义 .
(这是一个特殊的正则表达式字符)。因此 \
被转义,相当于 Pattern.compile(".", Pattern.LITERAL).split(string);
关于java - 在java中按句号和引号分割字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45951295/