我有一个叫做CurrentString的字符串,它的形式是这样的 “水果:味道很好”。我想使用:作为分隔符拆分CurrentString。这样一来,单词“Fruit”就会被分成单独的一串,而“they taste good”则是另一串。然后我想简单地使用SetText()的2个不同的TextViews显示该字符串。
解决这个问题最好的方法是什么?
我有一个叫做CurrentString的字符串,它的形式是这样的 “水果:味道很好”。我想使用:作为分隔符拆分CurrentString。这样一来,单词“Fruit”就会被分成单独的一串,而“they taste good”则是另一串。然后我想简单地使用SetText()的2个不同的TextViews显示该字符串。
解决这个问题最好的方法是什么?
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();
如果你想用一个像点(.)这样的特殊字符分割字符串,你应该在点之前使用转义字符\
例子:
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"
还有别的办法。例如,你可以使用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
.split方法将工作,但它使用正则表达式。在这个例子中是(to steal from Cristian):
String[] separated = CurrentString.split("\\:");
separated[0]; // this will contain "Fruit"
separated[1]; // this will contain " they taste good"
还有,这个来自: Android分裂不能正常工作
Android用逗号分隔字符串
String data = "1,Diego Maradona,Footballer,Argentina";
String[] items = data.split(",");
for (String item : items)
{
System.out.println("item = " + item);
}
你可能还想考虑Android特定的TextUtils.split()方法。
TextUtils.split()和String.split()之间的区别是由TextUtils.split()记录的:
string .split()当被拆分的字符串为空时返回["]。返回[]。这不会从结果中删除任何空字符串。
我觉得这是一种更自然的行为。本质上,TextUtils.split()只是String.split()的一个精简包装,专门处理空字符串的情况。该方法的代码实际上非常简单。
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();
字符串s ="字符串="
String[] str = s.split("=");//现在str[0]是“hello”和str[1]是“goodmorning,2,1”
添加这个字符串