Android拆分字符串

zai*_*aid 216 java string android

我有一个字符串,CurrentString并且是这样的形式 "Fruit: they taste good".
我想拆分CurrentString使用:作为分隔符.
这样,单词"Fruit"将被拆分为自己的字符串,"they taste good"并将成为另一个字符串.
然后我只想使用SetText()2个不同TextViews来显示该字符串.

什么是最好的方法来解决这个问题?

Cri*_*ian 587

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

您可能希望将空格删除到第二个String:

separated[1] = separated[1].trim();
Run Code Online (Sandbox Code Playgroud)

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

String currentString = "Fruit: they taste good.very nice actually";
String[] separated = currentString.split("\\.");
separated[0]; // this will contain "Fruit: they taste good"
separated[1]; // this will contain "very nice actually"
Run Code Online (Sandbox Code Playgroud)

  • 谢谢!.split()方法在Android中根本不起作用!StringTokenizer工作正常. (23认同)

Sil*_*ack 84

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

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

此外,这来自: Android拆分无法正常工作


小智 50

android用逗号分割字符串

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


gar*_*arh 22

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

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

当要拆分的字符串为空时,String.split()返回[''].这会返回[].这不会从结果中删除任何空字符串.

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


Faa*_*hir 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();
Run Code Online (Sandbox Code Playgroud)