Android拆分字符串

时间:2010-09-17 05:10:03

标签: java android string

我有一个名为CurrentString的字符串,其形式类似于此 "Fruit: they taste good"
我想使用CurrentString作为分隔符来分割:。这样,"Fruit"这个词就会分开进入自己的字符串,"they taste good"将是另一个字符串。
然后我只想使用2个不同SetText()的{​​{1}}来显示该字符串。

最好的方法是什么?

6 个答案:

答案 0 :(得分:564)

String currentString = "Fruit: they taste good";
String[] separated = currentString.split(":");
separated[0]; // this will contain "Fruit"
separated[1]; // this will contain " they taste good"

您可能希望将空格删除到第二个字符串:

separated[1] = separated[1].trim();

还有其他方法可以做到这一点。例如,您可以使用StringTokenizer类(来自java.util):

StringTokenizer tokens = new StringTokenizer(currentString, ":");
String first = tokens.nextToken();// this will contain "Fruit"
String second = tokens.nextToken();// this will contain " they taste good"
// in the case above I assumed the string has always that syntax (foo: bar)
// but you may want to check if there are tokens or not using the hasMoreTokens method

答案 1 :(得分:80)

.split方法可行,但它使用正则表达式。在这个例子中,它将(从Cristian窃取):

String[] separated = CurrentString.split("\\:");
separated[0]; // this will contain "Fruit"
separated[1]; // this will contain " they taste good"

此外,这来自: Android split not working correctly

答案 2 :(得分:47)

android用逗号分割字符串

String data = "1,Diego Maradona,Footballer,Argentina";
String[] items = data.split(",");
for (String item : items)
{
    System.out.println("item = " + item);
}

答案 3 :(得分:22)

您可能还想考虑Android特定的TextUtils.split()方法。

使用TextUtils.split()记录TextUtils.split()和String.split()之间的区别:

  当要拆分的字符串为空时,

String.split()返回['']。这会返回[]。这不会从结果中删除任何空字符串。

我发现这是一种更自然的行为。实质上,TextUtils.split()只是String.split()的一个瘦包装器,专门处理空字符串的情况。 The code for the method实际上非常简单。

答案 4 :(得分:22)

     String s = "having Community Portal|Help Desk|Local Embassy|Reference Desk|Site News";
     StringTokenizer st = new StringTokenizer(s, "|");
        String community = st.nextToken();
        String helpDesk = st.nextToken(); 
        String localEmbassy = st.nextToken();
        String referenceDesk = st.nextToken();
        String siteNews = st.nextToken();

答案 5 :(得分:0)

String s =“ String =”

String [] str = s.split(“ =”); //现在str [0]是“ hello”,str [1]是“ goodmorning,2,1”

添加此字符串