2013-12-10 225 views
0

我想在數組中評估字符串「[1,5] [4,5] [10,6]」。Java String to Array

我對Java正則表達式和語法並不十分熟悉。

String game = "[1,5] [4,5] [10,6]" 
Pattern splitter = Pattern.compile("\\[|,|\\]"); 
splitter.matcher(game); 
public String [] gameArray = null; 
gameArray = splitter.split(game); 

我想每對陣列如遍歷:[0][0] => 1; [0][1] => 5

+1

給定字符串的預期輸出是什麼? – Masudul

回答

2

如果你把

StringTokenizer st = new StringTokenizer(game, "[,] "); 

while (st.hasMoreTokens()) 
{ 
    currentNumber = Integer.parseInt(st.nextToken()); 
    // fill array with it 
} 

它應該是你所需要的,如果我理解得好

1

嘗試,

String game = "[1,5] [4,5] [10,6]"; 

String[] arry=game.substring(1, game.length()-1).split("\\] +\\["); 
List<String[]> twoDim=new ArrayList<>(); 
for (String string : arry) { 
    String[] twoArr=string.split(","); 
    twoDim.add(twoArr); 
} 
String[][] twoArr=twoDim.toArray(new String[0][0]); 

System.out.println(twoArr[0][0]); // 1 
System.out.println(twoArr[0][1]); // 5 
+0

偉大的作品!有沒有什麼好的在線java正則表達式生成器? – imalik8088

+0

@ aetbaar_444,這一個是好的,http://docs.oracle.com/javase/tutorial/essential/regex/index.html – Masudul

+0

@ aetbaar_444,上面的鏈接是用於教程,這一個是正則表達式生成器。 http://www.regexplanet.com/advanced/java/index.html – Masudul

1

爲此,您需要拆分字符串。 首先你需要分割空間,然後你需要分割,(逗號)。你的第三步將被刪除括號所以最後你會得到你的字符串到數組中。