Java coloca un "-" entre números impares en una cadena usando expresiones regulares

Estoy tratando de colocar un -entre todos los números impares en una cadena. Entonces, si se pasa una cadena como Hel776odebería salir Hel7-76o. Los guiones solo se deben colocar entre dos números impares consecutivos.

Estoy tratando de hacer esto en una línea a través de String.replaceAll ()

Tengo la siguiente línea:

return str.replaceAll(".*([13579])([13579]).*","$1-$2");

Si hay algún número impar, seguido de un número impar, coloque un -entre ellos. Pero está reemplazando destructivamente todo excepto el último partido.

Por ejemplo, si paso "999477", saldrá en 7-7lugar de 9-9-947-7. ¿Se necesitan más agrupaciones para que no reemplace todo excepto los partidos?

Ya hice esto con un bucle tradicional a través de cada char en cadena pero quería hacerlo en una sola línea con reemplazo de expresiones regulares.

Editar: debería decir que quise decir return str.replaceAll(".*([13579])([13579]).*","$0-$1");y no $1y$2

Respuesta 1

Tengo valor de color RGB y valor alfa. ¿Cómo puedo obtener un nuevo valor RGB suponiendo que tengo fondo blanco y alfa aplicado?

Digamos que codificaría una instancia de matriz de caracteres Java (char []) como bytes: usando dos bytes para cada carácter usando codificación big endian (almacenando los 8 bits más significativos en el extremo izquierdo y el ...

quiero obtener el formato de imagen almacenada o el tipo de imagen usando java, InputStream stream = request.getResponseStream (); BufferedImage image = ImageIO.read (secuencia); LOGGER.info (imagen);

Objetivos: Implementar un programa (java o python) para recuperar datos de videos que publiqué en mi canal de Youtube. Este programa se lanzará diariamente (1:00 a.m.). Soluciones: para recuperar datos ...