如何从字符串中读取并拆分某些单词?

时间:2014-03-30 12:27:20

标签: java string split

我有一个文字,我需要逐字逐句阅读,直到&#39 ;;'分隔符... 我在很多地方搜索过,也读了一些章节但我找不到任何方法......请帮助!

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

5 个答案:

答案 0 :(得分:1)

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

splittedWords = s.split(";");

您可以使用split方法分隔单词分隔符。它将返回一个字符串列表。 如果要将字符串中的值解析为Integer,可以使用:

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

            System.out.println(value);
        }
    }

但是,samplestring中唯一的整数是32。这就是为什么这段代码只输出“32”。

答案 1 :(得分:0)

试试这个:

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

答案 2 :(得分:0)

Java使用String.split()方法非常清楚地支持这一点。您可以阅读文档here

实施例

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

// tokens contains each value.

答案 3 :(得分:0)

您可以使用split的{​​{1}}方法。

String

这将打印:

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);
}

答案 4 :(得分: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(索引);