utf-8
, utf-16
, utf-32
는 Character Encoding이다.utf-16
과 utf-32
는 인코딩이 Unicode code point 와 일치해보이지만 utf-8
은 전혀 다르다.이 중 한글은 U+1100~U+11FF 사이에 한글 자모 영역, U+AC00~U+D7AF 사이의 한글 소리 마디 영역에 포함된다
//모든 공백 제거 String str =originalString.replaceAll("\\p{Z}", ""); // 앞뒤 공백만 제거(trim) String str = originalString.replaceAll("(^\\p{Z}+|\\p{Z}+$)", "");
StringBuilder b = new StringBuilder(); for (char c : input.toCharArray()) { if (c >= 128) b.append("\\u").append(String.format("%04X", (int) c)); else b.append(c); } return b.toString();