嗨..如何编写java代码来拆分字符串?

时间:2014-12-06 06:29:01

标签: java regex split

In my program a string is generated like this: Energie 670 kJ / 160 kcal 
So how to write split function in java code and the first keyword Energie should print
the outputs?
  

输入:

              Energie 670 kJ / 160 kcal
     

预期输出:

             1) Energie 670 kJ

             2) Energie 160 kcal

如果有人能解决这个问题,或者更好的解决方法 串两次?

提前致谢

5 个答案:

答案 0 :(得分:1)

String类中有方法

String[] split(String delimiter)

像这样使用

String strs[] = str.split("/");
for (int i=0; i<strs.length; i++) {
  System.out.println(strs[i].trim());
}

但正如其他人提到的那样,阅读API会很舒服,大部分时间你都可能找到你想要的东西。

答案 1 :(得分:1)

使用String对象的split api尝试此操作,如下所示:

String str = "Energie 670 kJ / 160 kcal";
String strs[] = str.split(" / ");//if you are expecting multiple space/tab etc use "\\s+/\\s+ instead of " / ""
for (int i=0; i<strs.length; i++) {
  System.out.println(strs[i]);
}

答案 2 :(得分:1)

您可以使用适当的方法string.split()来分割字符串。

  

String string =&#34; Energie 670 kJ / 160 kcal&#34 ;;

     

String [] parts = string.split(&#34; /&#34;);

     

String part1 = parts [0] .trim(); // Energie 670 kJ

     

String part2 = parts [1] .trim(); // 160 kcal

答案 3 :(得分:0)

String s = "Energie 670 kJ / 160 kcal";
// remove the leading "Energie"
String stripped = s.replace("Energie", "").trim();
String[] parts = stripped.split("/");
// take what's left of the slash
String s1 = "Energie ".concat(parts[0].trim());
// take what's right of the slash
String s2 = "Energie ".concat(parts[1].trim());
// print both resultant strings
System.out.println(s1);
System.out.println(s2);

答案 4 :(得分:0)

public class StringSplit {
public static void main(String args[]) throws Exception{
String testString = "670 kJ / 160 kcal";

System.out.println
   (java.util.Arrays.toString(testString.split("\\s+")));

} }

   output : [670,kJ,/,160,kcal]

从数组中获取reqiuered值。您也可以使用'\'来分割字符串,而不是使用空格。