import java.util.ArrayList;
import java.util.List;
public class Tester {
public static void main(String[] args) {
String toSplit="abcdefghijkefglmopefgqrs";
String target = "efg";
String[] result = split(toSplit, target, 2);
for(int i=0;i<result.length;i++){
System.out.println(i+"\t"+result[i]);
}
}
public static String[] split(String toSplit, String target, int limit){
List list = new ArrayList();
for(int index = toSplit.indexOf(target);limit>1&&index!=-1;limit--,index = toSplit.indexOf(target)){
list.add(toSplit.substring(0, index));
toSplit = toSplit.substring(index+target.length());
}
list.add(toSplit);
return (String[])list.toArray(new String[0]);
}
}