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
(
^
Una duda de la parte de String
Re: Una duda de la parte de String
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");
cambio=cambio.replace("$", "dollar");
Re: Una duda de la parte de String
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.
Re: Una duda de la parte de String
lo que pasa es que son caracteres reservados, para estos caracteres solo debes encerrarlos entre corchetes, esto deberia funcionarte:
cambio = cambio.replaceAll("[$]", "DOLAR");
cambio = cambio.replaceAll("[$]", "DOLAR");