El método devuelve por ejemplo si metes unos strings
a = "perryABelCornitorrincoD";
b = "ABCD";
a = "perry[target]AB[endtarget]el[target]C[endtarget]ornitorrinco[target]D[endtarget]
Mete entre [target][endtarget] los que esten contenidos en el segundo String
Mi problema es cuando se repiten, el replace me los suscribe dos o más veces y entonces me sale un disparate, si alguien sabe como se soluciona o si hay otra forma más sencilla...
Gracias //declaración de strings
boolean bol = true;
int n;
//Tenemos que conseguir las subristas de b que aparecen en a
for(int i = 0; i < a.length(); i++){
n = b.indexOf(a.charAt(i)); //posición del caracter de a contenido en b
if(n != -1){
bol = true;
}
if(n == -1){
bol = false;
}
if(bol){
x1 = x1 + a.charAt(i);
}else{
x1 = x1 + " ";
}
}
int w1,n3;
x1 = " " + x1 + " "; //para que siempre encuentra un espacio a la izqda y no se salga de rango
for(int k = 0; k < x1.length(); k++){
w1 = x1.charAt(k);
if(w1 != ' ' && x1.charAt(k-1) == ' '){ // no es un espacio pero el anterior si es un espacio
n3 = x1.indexOf(" ",k); //busca la posición del próximo espacio
aux = x1.substring(k,n3);
a = a.replaceFirst(aux,a1+aux+a2);
}
}
return a;
}
}