IT박스

문자열에서 "¼"및 "½"과 같은 모든 분수 기호 제거

itboxs 2020. 11. 28. 08:51
반응형

문자열에서 "¼"및 "½"과 같은 모든 분수 기호 제거


"¼ cups of sugar"와 유사한 문자열을 "cups of sugar"로 수정해야합니다. 이는 모든 분수 기호를 ""로 바꾸는 것을 의미합니다.

게시물 을 참조하고 다음 줄을 사용하여 ¼을 제거했습니다.

itemName = itemName.replaceAll("\u00BC", "");

그러나 가능한 모든 분수 기호를 어떻게 대체합니까?


같은 분수 기호 ¼½유니 코드 범주에 속합니다 Number, Other [No]. 해당 그룹에서 676자를 모두 제거해도 괜찮다면 다음 정규식을 사용할 수 있습니다.

itemName = itemName.replaceAll("\\p{No}+", "");

그렇지 않은 경우 언제든지 명시 적으로 나열 할 수 있습니다.

// As characters (requires UTF-8 source file encoding)
itemName = itemName.replaceAll("[¼½¾⅐⅑⅒⅓⅔⅕⅖⅗⅘⅙⅚⅛⅜⅝⅞↉]+", "");

// As ranges using unicode escapes
itemName = itemName.replaceAll("[\u00BC-\u00BE\u2150-\u215E\u2189]+", "");

아래 정규식을 사용하여 모든 분수를 빈 문자열로 바꿀 수 있습니다.

str = str.replaceAll("(([\\xbc-\\xbe])?)", "")

참고 URL : https://stackoverflow.com/questions/43359325/removing-all-fraction-symbols-like-%c2%bc-and-%c2%bd-from-a-string

반응형