Una duda de la parte de String

Discussion on Java at the COJ. This is the place to clear your doubts about these languages, and to share with the community the new things you learn about them.
Post Reply
User avatar
luismawolf
Posts: 30
Joined: 4 years ago
Gender: Male

Una duda de la parte de String

Post by luismawolf » 4 years ago

Como puedo utilizar el asterisco "*", el parentesis izquierdo "(" o el parentesis derecho ")" cuando quiero remplazar cualquiera de estos valores en un String por cualquier otro valor?
Por ejemplo como lo estoy haciendo aquí con el símbolo del dolar, para el cual si me cambia $ donde quiera que se encuentre por DOLAR:

String cambio=null;
cambio = cambio.replaceAll("$", "DOLAR");


La excepción que me da es la siguiente:

Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed group near index 1
(
^



angelmh
Posts: 11
Joined: 2 years ago
Gender: None specified

Re: Una duda de la parte de String

Post by angelmh » 2 years ago

Para tu duda, uso esto y me da bien, si quieres puedes probar, es lo mismo que tu usas lo que de la sgte forma:
cambio=cambio.replace("$", "dollar");

User avatar
isaac
Posts: 83
Joined: 3 years ago
Gender: None specified

Re: Una duda de la parte de String

Post by isaac » 2 years ago

Lo que sucede en la excepcion que te da el programa, es que el metodo que emplea el buscador es en base a expresiones regulares y el $ se usa para buscar si la cadena anteriormente escrita aparece al final. Debes tener cuidado a la hora de utilizar una u otra funcion.

User avatar
Oreste
Posts: 8
Joined: 7 years ago
Gender: Male

Re: Una duda de la parte de String

Post by Oreste » 2 years ago

lo que pasa es que son caracteres reservados, para estos caracteres solo debes encerrarlos entre corchetes, esto deberia funcionarte:
cambio = cambio.replaceAll("[$]", "DOLAR");

Post Reply

Return to “Java”