Parte del código en el que estoy trabajando usa un montón de expresiones regulares para buscar algunos patrones simples de cadena (por ejemplo, patrones como "foo [0-9] {3,4} bar") Actualmente, utilizamos Java Patterns compilados estáticamente y luego llamamos al Pattern#matcher
para verificar si una cadena contiene una coincidencia con el patrón (no necesito la coincidencia, solo un booleano que indica si hay una coincidencia). Esto está causando una notable cantidad de asignación de memoria que está afectando el rendimiento.Expresiones regulares simples de alto rendimiento de Java
¿Existe una mejor opción para la coincidencia de expresiones regulares de Java que sea más rápida o que al menos no asigne memoria cada vez que busque una cadena en un patrón?
qué tal http://download.oracle.com/javase/1.4.2/docs/api/java/lang/String.html#matches(java.lang.String) esto devolverá boolean – ant
@ c0mrade. partidos () hace lo mismo que Pattern.matches (, ), que hace lo mismo que Pattern.compile () .matcher () .matches() –
Jared
@Jared correcta, pero dijo que estaba usando el patrón/matcher no string coincide con – ant