2017-05-02 2 views
0
String line = "First string March 8, # 2017: Boris#|#Second string"; 
String[] list = line.split("#|#"); 

i erwarteten list[0] = "First string March 8, # 2017: Boris" undWie String nach Split mit getrennter Zeichenfolge "# | #"

list[1] = "Second string" 

aber ich bin nicht das Ergebnis bekommen, wie erwartet. Es wird in mehrere Strings aufgeteilt. Was ist die Änderung, die ich in der Split-Funktion machen muss?

Antwort

2
String[] list = line.split("#\\|#"); 

split() Die Methode der (erste) Parameter wird erwartet, einen regulären Ausdruck enthalten. Die | ist ein Sonderzeichen ist Regex, so dass Sie es mit \ es zu entkommen in einem Regex buchstäblich entkommen müssen.

0

Sie müssen das Rohr entkommen: #\\|#

Beispiel:

String line = "First string March 8, # 2017: Boris#|#Second string"; 
String[] list = line.split("#\\|#"); 
System.out.println(Arrays.toString(list));