Estoy tratando de convertir una ecuación RPN en una cadena que coincida con las reglas de tigcc. Los números deben tener el número de caracteres frente a ellos y una etiqueta positiva o negativa. Por "2" que sería "1 2 POSINT_TAG"Uso de funciones o métodos en String.replaceAll() regex de Java
Mi entrada completa al convertidor RPN se basa en expresiones regulares, así que quería hacer uso de ellos y tienen un String.replaceAll()
función como:
string.replaceAll("(\d+)","$1".length+" $1 POSINT_TAG");
Pero hay simplemente imprime: "2 números INT_TAG". Encontré algunas clases como com.stevesoft.pat (link).
¿Hay alguna otra forma de implementar Sun Java normal para usar las funciones (personalizadas) en reemplazar las reglas de expresiones regulares?
FYI, aunque se prefiere generalmente StringBuilder, 'appendReplacement()' y 'appendTail()' no lo aceptan; tienes que usar StringBuffer en su lugar. (StringBuilder no existía aún cuando se agregó la clase Matcher, en JDK 1.4.) –
+1 al comentario - Sigo esperando que añadan una sobrecarga de estos métodos que pueden tomar cualquier 'Appendable' pero (a partir de la actual Construcciones Java 8) todavía hay solo la versión 'StringBuffer'. –
Puede que le divierta saber que [esta respuesta se cita en el código fuente de la aplicación móvil Stack Overflow para Android] (http://meta.stackexchange.com/a/277077/254929). – Air