Te traemos la respuesta a esta escollo, al menos eso pensamos. Si sigues con dudas coméntalo, que para nosotros será un gusto responderte
Solución:
Avery® Laser & Inkjet Self-Adhesive
Primer uso StringEscapeUtils#unescapeHtml4()
(o #unescapeXml()
según el formato original) para recuperar el &
en un &
. Entonces usa String#replaceAll()
con [^x20-x7e]
para deshacerse de los caracteres que no están dentro del rango ASCII imprimible.
Resumido:
String clean = StringEscapeUtils.unescapeHtml4(dirty).replaceAll("[^\x20-\x7e]", "");
..que produce
Avery Laser & Inkjet Self-Adhesive
(sin el punto final como en su ejemplo, pero eso no estaba presente en el original;))
Dicho esto, esto sin embargo parece más una solicitud para solución alterna que una solicitud de solución. Si elabora más sobre el requisito funcional y/o dónde se encuentra string se originó, es posible que podamos proporcionar el Correcto solución. los ®
es decir, parece ser causado por el uso de una codificación incorrecta para leer el string en y el &
parece ser causado por el uso de un analizador basado en texto para leer el string en lugar de un analizador HTML completo.
Puedes usar el StringEscapeUtils
clase del proyecto Apache Commons Text.
Valoraciones y reseñas
Si sostienes alguna incertidumbre y capacidad de reformar nuestro sección te recomendamos escribir una crítica y con mucho gusto lo estudiaremos.