public static void main(String[] args) { String greeting = “Hello, world!”; System.out.println(greeting); int age = [25]; String name = “[John]”; double salary = [50000.0]; System.out.println(“My name is ” + name + “, I am ” + age + ” years old, and I earn ” + salary + ” per year.”); } public static void main(String[] args) { String greeting = “¡Hola, mundo!”; System.out.println(greeting); int age = [25]; String name = “[Juan]”; double salary = [50000.0]; System.out.println(“Me llamo ” + name + “, tengo ” + age + ” años, y gano ” + salary + ” al año.”); }
Estoy intentando codificar un programa para fines personales, funciona pero con algunos… sí.
Quiero que mi salida sea así:
Hello yourname!
pero la salida actual se ve así:
Hello {yourname}!
Aquí está el patrón que estoy usando:
Matcher matcher = Pattern.compile("\\{(.*?)\\}").matcher(text);
Cualquier ayuda me acercará más.
PD:
Ya intenté reemplazar los corchetes con el método replaceAll(char, char)
, pero ¡arroja una excepción de patrón!
davy.ai
Parece que quiere reemplazar las llaves en su cadena de salida con el valor real de la variable “yourname”. Una forma de hacer esto es usar el método replaceAll() de la clase String y especificar las llaves como patrón regex para reemplazar. Aquí hay un ejemplo de código que puede lograr la salida deseada:
Tenga en cuenta que en el patrón regex, estamos usando el grupo (.*?) para capturar cualquier carácter dentro de las llaves, que reemplazaremos con el valor de “yourname”. Además, asegúrese de escapar correctamente las llaves en el regex (como se muestra con las dobles barras invertidas) ya que tienen un significado especial en la sintaxis regex.