2014-03-30 78 views
-1

我有一段文字,我需要逐字閱讀,直到';'分隔符... 我在許多地方搜索過,也閱讀過一些章節,但找不到任何方法使用...請幫助!如何從字符串中讀取並拆分某些單詞?

要讀取的字符串,即32;土豆;蔬菜; 21.30; 12.20; 15 21 32 45;

+1

[將Java字符串拆分爲兩個字符串使用分隔符](http://stackoverflow.com/questions/7787385/split-java-string-into-two-string-using-delimiter) – McDowell

+0

http:// docs.oracle.com/javase/6/docs/api/java/lang/String.html#split(java.lang.String) – Srinath

+0

有一個確切的重複你在這裏問 - > http:// stackoverflow /我的問題/ 3481828 /如何拆分字符串在java中 –

回答

0

試試這個:

for (String s : myOwnString.split(";")){ 
    System.out.println(s); 
} 
0

Java支持這個很清楚,與String.split()方法。您可以閱讀文檔here

String[] tokens = input.split(";"); 

// tokens contains each value. 
+0

thnx :)我也試過這 – s33h

0

可以使用的Stringsplit方法。

String string = "32; Potatoe; Vegetables; 21.30; 12.20; 15 21 32 45"; 
String[] split = string.split(";"); 

for(String s: split) 
{ 
    System.out.println(s); 
} 

這將打印:

32 
Potatoe 
Vegetables 
21.30 
12.20 
15 21 32 45 
+0

thnx我做到了這一點,但我不能解析爲int例如:id = Integer.parseInt(s );我得到一個錯誤 – s33h

0
String text = "32; Potatoe; Vegetables; 21.30; 12.20; 15 21 32 45"; 
String[] words = new String[text.length()]; 
int initialIndex = 0,i=0; 

while (initialIndex<text.length()) { 
    words[i] = text.substring(initialIndex, text.indexOf(";")); 
    i++; 
    initialIndex = text.indexOf(";")+1; 
    } 

現在的話字符串包含文本中所有單詞。 您可以通過 訪問word.get(index);

1
String s = "32; Potatoe; Vegetables; 21.30; 12.20; 15 21 32 45;"; 
String[] splittedWords; 

splittedWords = s.split(";"); 

您可以使用split方法沿分隔符分隔單詞。它會返回一個字符串列表。 如果你想在字符串中的值解析爲一個整數,你可以這樣做:

for (String string : splittedWords) 
    { 
     if(string.matches("[^a-z \\.]+")==true) 
     { 
      int value = Integer.parseInt(string); 

      System.out.println(value); 
     } 
    } 

在samplestring唯一的整數爲32,雖然。這就是爲什麼這個代碼只會輸出「32」。

+0

我做到了,但我無法解析從字符串到INT,我試圖轉換與增強的for循環 – s33h

+1

thnx再次回答時出現錯誤..我嘗試了幾件事情包括你做了什麼,但沒有產生所需的輸出。對於解釋:32是產品編號,而其他是名稱,類別,價格和數量。我想添加數量,但是我不能...... thnx再次:) – s33h

+0

沒有問題......當然也可以解析其他值,但這需要更復雜一點的算法。 – Iconstrife

相關問題