Java - 按字符串分割的字符串

Yha*_*ner 7 java split

当我尝试使用分隔符"|"分割字符串时,它似乎会分割每个字符.

这是导致问题的我的路线:

String out = myString.split("|");
Run Code Online (Sandbox Code Playgroud)

小智 19

在正则表达式中,|是用于交替的保留字符.你需要逃脱它:

String out = string.split("\\|");
Run Code Online (Sandbox Code Playgroud)

请注意,我们使用了两个反斜杠.这是因为第一个转义Java字符串中的第二个,所以传递给正则表达式引擎的字符串是\|.

  • 澄清一下,并不是```字符意味着一个空字符串.它的意思是"或".只是这意味着问题中的正则表达式转换为"空字符串或空字符串". (4认同)
  • 哦谢谢!我以为有人会用一个反斜杠逃脱它,但Android Studio告诉我这是一个非法的逃避字符,所以我认为它不需要转义.谢谢! (2认同)