2014-03-25 44 views
-5

我有以下格式的字符串」充分利用逗號分隔字符串第一個值

一個String = 1,名稱2,名稱3,名稱4,NAME5,name6;

什麼是最好的出路,以得到NAME1超出這個唱它可以應用到類似的逗號分隔字符串的通用解決方案?

任何幫助表示讚賞。

+3

有很多關於如何使用簡單的Google解析Java中的CSV的例子......抱歉,不得不倒退。例如,[這裏](http://stackoverflow.com/questions/7488643/java-how-to-convert-comma-separated-string-to-arraylist),首先在Google上用* java csv string *。您可能還想修剪()結果集,以消除空白。在你的問題的例子中,'name5'和'name6'之間沒有空格,但你使用其他條目。 'trim()'應該會出一點點。 –

+0

可能的重複[什麼是從Java中的字符串中提取第一個單詞的最佳方式是什麼?](http://stackoverflow.com/questions/5067942/what-is-the-best-way-to-extract-the負一字從-A-字符串中的Java) –

回答

9

可以使用split()方法,它返回一個數組String[],這樣你就可以訪問至 一個使用語法someArray[index]的元素。由於您想要第一個 elemnt,您可以使用[0]

String first_word = s.split(",")[0]; 

注:

  • 指數在大多數編程語言開始0。所以第一個elemnt將在索引0。第二個在索引1。等等。
1
String first = s.split(",")[0]; 

這應該完全正常工作適合你。

1
s.split(",")[0]; 

Split爲您提供了一個由參數中提供的正則表達式分割的字符串數組。在使用之前,你會想檢查分割輸出的長度。

1
String parts[]=s.split(","); 
      String part1=parts[0]; 

使用這樣的,如果你想獲得頭名

1

如果你看一下String.split(String regrex),你會發現,它會返回一個字符串數組。

name1 = s.split(", ")[0]; 

[0]是數組中的第一個索引,所以它會是你的名字1。 s.split(", ").length等於數組的大小,所以如果您需要任何索引s.split(", ")[num-1]其中num是您希望從一開始索引的數字。