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

Java 如何读取字符串并拆分某些单词?,java,string,split,Java,String,Split,我有一篇课文需要逐字读到“;”分隔符。。。 我在很多地方搜索过,也读过一些章节,但我找不到任何方法来使用。。。请帮忙 要读取的字符串,即32;波塔托;蔬菜;21.30; 12.20; 15 21 32 45; 试试这个: for ( String s : myOwnString.split(";") ){ System.out.println(s); } Java通过String.split()方法非常清楚地支持这一点。您可以阅读文档 范例 您可以使用String的split方法 St

我有一篇课文需要逐字读到“;”分隔符。。。 我在很多地方搜索过,也读过一些章节,但我找不到任何方法来使用。。。请帮忙

要读取的字符串,即32;波塔托;蔬菜;21.30; 12.20; 15 21 32 45;

试试这个:

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

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

范例


您可以使用
String
split
方法

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
String text=“32;马铃薯;蔬菜;21.30;12.20;15 21 32 45”;
String[]words=新字符串[text.length()];
int initialIndex=0,i=0;
while(初始化索引)
您可以使用split方法沿分隔符分隔单词。它将返回字符串列表。
如果要将字符串中的值解析为整数,可以使用以下命令:

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

            System.out.println(value);
        }
    }

但是,示例字符串中唯一的整数是32。这就是为什么此代码只输出“32”.

的可能重复您在此处提出的问题有一个精确的重复-->我这样做了,但我无法从字符串解析为Int,我在尝试使用增强的for loopthnx进行转换以再次获得答案时出错。我尝试了几件事情,包括您在上面所做的事情,但都没有产生所需的输出。解释:32是本文数字,而其他的是名称、类别、价格和数量。我想添加数量,但我无法…。thnx:)没问题。。。当然也可以解析其他值,但这需要更复杂的算法;我犯了一个错误
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;
    }
String s = "32; Potatoe; Vegetables; 21.30; 12.20; 15 21 32 45;";
String[] splittedWords;

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

            System.out.println(value);
        }
    }