先看实例
String ces = "(1,2,3)";
int beginIndex = 0;
int endIndex = 0;
beginIndex = ces.indexOf("(") + 1;
endIndex = ces.lastIndexOf(")");
String coulmns = ces.substring(beginIndex, endIndex);
System.out.println(coulmns);
String ces1 = "0(1,2,3)456";
beginIndex = ces1.indexOf("(") + 1;
endIndex = ces1.lastIndexOf(")");
String coulmn1 = ces1.substring(beginIndex, endIndex);
System.out.println(coulmn1);
运行结果:
1,2,3
1,2,3
看indexOf源码
public int indexOf(String str) {
return indexOf(str, 0);
}
public int indexOf(String str, int fromIndex) {
return indexOf(value, 0, value.length,
str.value, 0, str.value.length, fromIndex);
}
里面还有,不过太长了,不放出来了,主要就是判断了一下,传入字符与第0个字符的位置关系,最后返回传入字符的位置。
ces.indexOf是判断括号中的字符在字符串中的位置,括号中是左括号,判断出位置传给beginIndex,同理endIndex也是。
然后substring根据位置截取字符串。
注意需要将截取后的字符串获取一下,赋值给一个变量。