Pois é galera, estou tentando ler um array de String onde eu determino um padrao para inicio e outro para fim, e neste intervalo de inicio e fim preciso criar um novo sub-array.
Tentei este codigo, mas o retorno so funciona para a primeira ocorrencia. alguem tem alguma dica ou solução?
package estudos;
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.swing.JOptionPane;
public class Estudos
{
public static void main(String[] args) throws IOException
{
int i =0, tf = 0;
Integer in = 1, f = 3;
String[] x = {"1","2","3","4","5","6","7","8","9","0","1","2","3","4","5","6","7","8","9","0","1","2","3","4","5","6","7","8","9","0","1","2","3","4","5","6","7","8","9","0"};
String[] y = null;
Pattern pat1 = Pattern.compile(in.toString());
Matcher mat1 = pat1.matcher(x[i]);
Pattern pat2 = Pattern.compile(f.toString());
Matcher mat2 = pat2.matcher(x[i]);
boolean add =false;
do
{
System.out.println("inicio: "+x[i]+"("+i+") "+mat1.find());
System.out.println( "fim: "+x[i]+"("+i+") "+mat2.find());
if(mat1.find())
{
add = true;
y = null;
y = new String[x.length];
y[tf]=x[i];
tf++;
}
if(mat2.find())
{
add = false;
y[tf]=x[i];
tf++;
mat2 = pat2.matcher(x[i]);
}
if(add)
{
y[tf]
=x[i];
tf++;
if(f<10)f++;
pat2.compile(f.toString());
mat2.usePattern(pat2);
}
i++;
}
while(i<x.length);
}
}