Necesito modificar cadenas similares a "¼ tazas de azúcar" a "tazas de azúcar", lo que significa reemplazar todos los símbolos de fracción con "".
Me he referido a esta publicación y logré eliminar ¼ usando esta línea:
itemName = itemName.replaceAll("\u00BC", "");pero, ¿cómo reemplazo todos los símbolos de fracciones posibles que existen?
Los símbolos de fracción como ¼ y ½ pertenecen al Number, Other [No] . Si está de acuerdo con eliminar los 676 caracteres de ese grupo, puede usar la siguiente expresión regular:
itemName = itemName.replaceAll("\\p{No}+", "");Si no, siempre puedes enumerarlos explícitamente:
// As characters (requires UTF-8 source file encoding) itemName = itemName.replaceAll("[¼½¾⅐⅑⅒⅓⅔⅕⅖⅗⅘⅙⅚⅛⅜⅝⅞↉]+", ""); // As ranges using unicode escapes itemName = itemName.replaceAll("[\u00BC-\u00BE\u2150-\u215E\u2189]+", "");Puede usar la expresión regular a continuación para reemplazar todas las fracciones con una cadena vacía.
str = str.replaceAll("(([\\xbc-\\xbe])?)", "")