有一些内容我不完全理解其含义。我知道如果想在正则表达式中找到特殊字符,需要对它们进行转义。我还在某处看到过,如果反斜杠在Java的字符串字面量内部,需要对其进行转义。我的问题是,如果我“转义”反斜杠,它的意义不就消失了吗?这样它就无法转义后面的加号符号了吧?
会抛出一个错误(但既然这是转义这些特殊字符的方式,为什么会报错呢?):
replaceAll("\+\s", ""));
作品:
replaceAll("\\+\\s", ""));
希望这样讲得通。我只是试图理解为什么需要加这些额外的斜杠,而我阅读的正则表达式教程并没有提到它们。而像"\+"
这样的东西应该能够找到加号符号。
"\+\s"
都会导致错误,例如String s = "\+\s";
。在replaceAll
参数中使用字符串字面值没有什么特别的。 - ajb"\+"
)。 - Alan Moore