我正在通过遵循this tutorial来学习GWT,但是在步骤4中有一些我不太了解的内容。

    if (!str.matches("^[0-9A-Z\\.]{1,10}$")) {...}


在检查the documentation的Pattern类后,我知道字符^和$代表行的开头和结尾,并且[...] {1,10}表示括号中的部分[...]必须存在至少一次但不超过10次。我不明白的是方括号中零件的最终字符。 0-9A-Z表示从0到9或从A到Z的字符范围。但是\\是什么。意思?

最佳答案

它与点字符匹配。由于点在regexp中具有特殊含义,因此必须使用反斜杠对其进行转义。并且由于反斜杠在Java字符串中具有特殊含义,因此必须使用另一个反斜杠对其进行转义。

07-28 13:07