关于java中代码的一个问题,特别是在跳过函数中


scanner.skip("(rn|[nru2028u2029u0085])?");

有人能解释一下这个代码吗。。。在编译时,我仍然对这段代码以及这段代码是如何工作的感到困惑

scanner.skip("(rn|[nru2028u2029u0085])?");

您可以阅读预定义字符类的所有详细信息:

https://docs.oracle.com/javase/10/docs/api/java/util/regex/Pattern.html

寻找水平空白和换行符。

此代码告诉扫描程序忽略分隔符跳过输入中不需要的字符。

在这种情况下,将跳过一组与新行处理相关的字符:

  • Windows中的一对rnCRLF
  • 或以下任何单个字符:
    • r-CR(回车(MacOS行分隔符
    • n-LF(换行(Unix行分隔符
    • u2028-Unicode行分隔符
    • u2029-Unicode段落分隔符
    • u0085-Unicode下一行

字符串说明:

rn-类似于Windows中的一对CRLF,或以下任何单个字符:

r-CR(回车(MacOS线路分离器,

n-LF(换行(Unix换行符,

u2028-Unicode行分隔符,

u2029-Unicode段落分隔符,

u0085-Unicode下一行。

最新更新