Necesito reemplazar todo & en una cadena que no sea parte de una entidad HTML. De manera que la cadena "Este & ENTIDADES >
& <
" volverán "Este &
ENTIDADES > & <
"Optimización de expresiones regulares - escapando entre símbolos en java
Y se me ha ocurrido con esta expresión regular-patrón: "& [a-zA-Z0-9] {2 , 7}; "que funciona bien. Pero no soy muy hábil en expresiones regulares, y cuando pruebo la velocidad en iteraciones de 100k, usa una cantidad de tiempo doble sobre un método usado anterior, que no usó expresiones regulares. (Pero tampoco funcionaba al 100%).
Testcode:
long time = System.currentTimeMillis();
String reg = "&(?!&#?[a-zA-Z0-9]{2,7};)";
String s="a regex test 1 & 2 1&2 and &_gt; - &_lt;"
for (int i = 0; i < 100000; i++) {test=s.replaceAll(reg, "&");}
System.out.println("Finished in:" + (System.currentTimeMillis() - time) + " milliseconds");
Entonces la pregunta sería si hay algunas maneras obvias de optimizar esta expresión expresiones regulares para que sea más eficaz?
que tenía que escribir las ENTIDADES con guión bajo como &_gt; o de lo contrario iba a presentar como el símbolo del código era. – Duveit
Casi cuatro de nosotros hemos intentado editar su texto para rodear los signos y signos de formato de código. Solo seleccione el texto que desee y use el código, retendrá el símbolo comercial. – cgp