簡體   English   中英

如何用“ |”分割字符串 Java中String類的拆分方法中的“”

[英]How to split a string by “ | ” in split method of String class in Java

我想在Java中用“ |”分割字符串。 我發現了String類的split方法,它期望用於正則表達式的正則表達式,但是我不知道如何為“ |”形成正則表達式。

例如,一個字符串是“ AA | BB | CC”,而我只想獲取AA,BB和CC作為字符串數組。

String string = "AA|BB|CC";
String[] arr = string.split("\\|");
for (String s : arr) {
    System.out.println(s);
}

上面的代碼打印:

AA
BB
CC

為此使用正則表達式,但是| char是一個特殊的char,因此必須對其進行替換。

"AA | BB | CC".split("\\\\s*\\\\|\\\\s*");

它是string.split("\\\\|") (必須對管道進行轉義)。

| 是正則表達式中的特殊字符,因此您必須對其進行轉義。

試試: string.split("\\\\|")

傳遞給split方法的正則表達式應為: \\\\|

String text = "AA | BB | CC";
text.split("\\|")); // [AA ,  BB ,  CC]

如果要擺脫空格,請執行以下操作:

text.split("\\s*\\|\\s*")); // [AA, BB, CC]

| 是RegEX中的關鍵字。

String.split()以RegEx作為參數。 你必須逃避它。 你可以這樣做。

string.split(" \\| ");

string.split("\\\\|")完成工作。

  • split()根據正則表達式分割字符串
  • 需要\\來將管道的正則表達式的含義轉義為“或”
  • 第二個反斜杠需要轉義Java編譯器的第一個反斜杠。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM