gpt4 book ai didi

java - 为什么\\在此正则表达式中不被解释为反斜杠?

转载 作者:行者123 更新时间:2023-12-02 06:16:45 26 4
gpt4 key购买 nike

我正在学习使用 Java 的模式和匹配器,这是我书中的示例代码片段。它的工作原理正如作者所描述的那样,但我不明白为什么 \\. 最终成为一个点而不是反斜杠(\\部分)和点(. 部分)。编译器不是从左到右读取的吗?

import java.util.regex.*;
public class SplitTest {
public static void main(String[] args) {
String input= "www.cs.cornell.edu";

Pattern p = Pattern.compile("\\.");
String pieces[] = p.split(input);
for (int i=0; i<pieces.length; i++){
System.out.println(pieces[i]);
}



}
}

最佳答案

它在解析字符串文字时被解释一次,并由正则表达式编译器解释一次。

"\\." -> "\." - 字符串文字
"\." -> 文字 . - 正则表达式编译器

关于java - 为什么\\在此正则表达式中不被解释为反斜杠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3640378/

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