检查字符串中单词的值

时间:2011-10-13 06:32:37

标签: java string token

我有一个像

这样的字符串
String example =  "Tag: something Id: somethingElse Score: 0.8";

如何检查Score是否高于/等于/低于0.

4 个答案:

答案 0 :(得分:2)

通过使用lastIndexOf对象中的substringString,您可以从字符串中获取值。

String scoreStr = example.substring(example.lastIndexOf("Score:") + "Score:".length());
double score = Double.parseDouble(scoreStr.trim());

现在,您可以在if上发表else if ... score声明。

PS:如果你希望它以float形式返回,那么改变最后一行:

float score = Float.parseFloat(scoreStr.trim());

答案 1 :(得分:2)

作为@The-Elite-Gentleman的替代品:

String [] tokens = example.split(" |:");
Double score = Double.valueOf( tokens[tokens.length - 1] )

如果得分总是最后的,当然:)

答案 2 :(得分:1)

String score = example.substring("the index of 0", "the index of 8"); //Without quotes//

double scoreDouble = Double.parseDouble(aString);

然后检查scoreDouble。

答案 3 :(得分:1)

如果格式稳定,您可以查找“得分:”,获取字符串的剩余部分,并根据您需要的精度解析为浮点数或双数字。

String example = "Tag: something Id: somethingElse Score: 0.8";
String search = "Score: ";
int scorePosition = example.indexOf(search) + search.length();
float num = Float.parseFloat(example.substring(scorePosition));

之后如果在num上就会很简单。您还应该捕获NumberFormatException,尤其是在字符串格式有时可能出错的情况下。