vocales una reemplazar posicion por parte numeros extraer especiales definicion caracteres caracter cambiar cadenas cadena buscar java string replace last-occurrence

java - posicion - Reemplazar la última aparición de un carácter en una cadena



java reemplazar caracteres especiales (4)

Esto debería funcionar:

String replaceLast(String string, String substring, String replacement) { int index = string.lastIndexOf(substring); if (index == -1) return string; return string.substring(0, index) + replacement + string.substring(index+substring.length()); }

Esta:

System.out.println(replaceLast("/"Position, fix, dial/"", "/"", "///""));

Huellas dactilares:

"Position, fix, dial/"

Test

Esta pregunta ya tiene una respuesta aquí:

Estoy teniendo una cuerda como esta

"Position, fix, dial"

Quiero reemplazar la última comilla doble (") con comilla doble de escape (/")

El resultado de la cadena es ser

"Position, fix, dial/"

Cómo puedo hacer esto. Soy consciente de reemplazar la primera aparición de la cadena. pero no sé cómo reemplazar la última aparición de una cadena


Si solo desea eliminar el carácter las (en caso de que exista uno), este es un método de una línea. Yo uso esto para los directorios.

localDir = (dir.endsWith("/")) ? dir.substring(0,dir.lastIndexOf("/")) : dir;


String docId = "918e07,454f_id,did"; StringBuffer buffer = new StringBuffer(docId); docId = buffer.reverse().toString().replaceFirst(",",";"); docId = new StringBuffer(docId).reverse().toString();


String str = "/"Position, fix, dial/""; int ind = str.lastIndexOf("/""); if( ind>=0 ) str = new StringBuilder(str).replace(ind, ind+1,"///"").toString(); System.out.println(str);