【发布时间】:2017-11-06 04:49:03
【问题描述】:
String add_filter = address.split("\\,", 2)[0];
这会删除第一个逗号之后的文本。我需要在不使用循环的情况下删除第二个逗号后的文本。
【问题讨论】:
标签: java android string google-api
String add_filter = address.split("\\,", 2)[0];
这会删除第一个逗号之后的文本。我需要在不使用循环的情况下删除第二个逗号后的文本。
【问题讨论】:
标签: java android string google-api
address.split("\\,")[2];
用逗号分隔字符串。第 0 个索引在第一个逗号之前,第一个在第一个逗号之后,第二个在第二个逗号之后,等等。请注意,此代码假定至少有 2 个逗号。如果没有,则需要保存 split() 返回的数组并检查长度以确保其为 3 或更高。否则没有第二个逗号。
【讨论】:
试试下面的代码:
//Finding the Nth occurrence of a substring in a String
public static int ordinalIndexOf(String str, String substr, int n) {
int pos = str.indexOf(substr);
while (--n > 0 && pos != -1)
pos = str.indexOf(substr, pos + 1);
return pos;
}
然后您可以删除此索引位置之后的字符串,与以下代码相同:
String newStr = address.substring(0,ordinalIndexOf(address,",",2)- 1)
【讨论】:
试试下面的代码
String s = "Hello,world,good bye";
s = s.replaceFirst(",(.*?),.*", " $1");
System.out.println(s);
【讨论】: