Java 子字符串:获取“的索引”;或;字符串出现
我怎样才能Java 子字符串:获取“的索引”;或;字符串出现,java,android,Java,Android,我怎样才能子字符串下面字符串中的第三个数字: String val = "2020202030 or 303030303 or 303033303"; 对于两个数字,解决方案如下: String val = "2020202030 or 303030303 firstNumber = val.substring(0,val.indexOf("or")-1); secondNumber = val.substring(val.indexOf("or") + 3,val.length());
子字符串
下面字符串中的第三个数字
:
String val = "2020202030 or 303030303 or 303033303";
对于两个数字,解决方案如下:
String val = "2020202030 or 303030303
firstNumber = val.substring(0,val.indexOf("or")-1);
secondNumber = val.substring(val.indexOf("or") + 3,val.length());
但是,如何获得下面字符串中第二个“or”的索引
String val = "2020202030 or 303030303 or 303033303";
firstNumber = val.substring(0,val.indexOf("or")-1);
secondNumber = val.substring(val.indexOf("or")-1,<index of second or >?);
thirdNumber= val.substring(<index of second or>?,val.length());
String val=“202020030或303030303或303033303”;
firstNumber=val.substring(0,val.indexOf(“或”)-1);
secondNumber=val.substring(val.indexOf(“或”)-1,?);
thirdNumber=val.substring(?,val.length());
使用拆分:
String[] numbers = val.split(" or ");
数字[2]
将包含第三个数字
如果您喜欢使用indexOf
获取第二个“or”的索引,请使用int indexOf(String str,int from index)
变量。您可以看到以下答案:
然后再详细阐述一下。比如说
int n_occurrences = 0
for (int index = val.indexOf("or");
index >= 0;
index = val.indexOf("or", index + 1))
{
n_occurrences++;
if (n_occurrences=2)
System.out.println(index);
}
埃兰的答案要好得多。使用该选项。:)想解释一下为什么它会回答这个问题吗?上面我使用了java的split函数,它返回数组,所以当我们用“或”拆分上面的字符串时,我们会得到数组格式的上面的字符串,第一个元素是“20202030”,依此类推
String val = "2020202030 or 303030303 or 303033303";
String[] arr = val.split(" or ");
System.out.println(arr[0]); //2020202030
System.out.println(arr[1]); //303030303
System.out.println(arr[2]); //303033303