2014-02-28 25 views
1
"2/17/2014 11:55:00 PM" 

我想將Java中的上述字符串拆分爲以下部分:2,17,2014,11,55,00,PM。Java String Splitting

我想使用的東西

String[] parts = string.split("[/ :]"); 

它似乎工作喜歡 - 但沒有的。如果可能的話,我希望在一個命令中分割一切。

+0

那你試試?你得到了什麼結果? 「不起作用」不足以幫助我們。 –

+0

看起來像你試圖解析一個日期。任何你不想使用SimpleDateFormat或一些JodaTime類來解析它的原因? – Harald

+0

它適合我。問題在哪裏? – qqilihq

回答

1

嘗試:

String[] strings = "2/17/2014 11:55:00 PM".split("/| |:"); 

也嘗試更換「」如果你只想要一個字符串:

String x = "2/17/2014 11:55:00 PM".replaceAll("/| |:", ", "); 
1

我想有一個與你正在尋找空間的方式有問題。嘗試

[:\\s\\/] 

它將尋找一個冒號(:),一個「空格」(製表符或空格),然後斜線(你有一個反斜槓逃脫)。

0

您可以分割使用正則表達式表示,像這樣:

public class Test { 
    public static void main(String[] args) { 
     String s = "2/17/2014 11:55:00 PM"; 
     String[] parts = s.split("/|:| "); 
     for (String p : parts) 
      System.out.println(p); 
    } 
} 

管道 '|'正則表達式中的運算符意味着OR。所以你的標準是正斜槓,冒號或者空格。

這產生以下。

$ javac Test.java 
$ java Test 
2 
17 
2014 
11 
55 
00 
PM 
0

它爲我工作:

String s="2/17/2014 11:55:00 PM"; 
    String[] parts = s.split("[/ :]"); 

輸出:

for (String s: parts) 
    System.out.println(s); 

==>

run: 
2 
17 
2014 
11 
55 
00 
PM 
BUILD SUCCESSFUL (total time: 0 seconds)