|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 차의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요 : 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjava.text.Normalizer
public final class Normalizer
이 클래스는, 텍스트의 소트나 검색이 용이하게 되도록(듯이) Unicode 텍스트를 그것과 등가인 합성 형식 또는 분해 형식으로 변환하는,normalize
메소드를 제공합니다. normalize
메소드는,「Unicode Standard Annex #15 — Unicode Normalization Forms」에 기술되고 있는 표준의 정규화 형식을 지원하고 있습니다.
Unicode 에서는, 엑센트등의 수식이 붙은 문자를 몇개의 방법으로 encode 할 수 있습니다. 문자 A-acute 를 예를 들어 봅시다. 이것은, Unicode 에서는 단일의 문자 (합성 형식)로서 encode 할 수 있습니다.
U+00C1 LATIN CAPITAL LETTER A WITH ACUTE또는, 2 개의 독립한 문자 (분해 형식)로서 encode 할 수 있습니다.
U+0041 LATIN CAPITAL LETTER A U+0301 COMBINING ACUTE ACCENT다만, 프로그램의 사용자에게 있어서는, 어느 쪽의 순서도, 사용자 레벨에서는 같은 문자 「acute 엑센트 첨부의 A」로서 다루어져야 합니다. 텍스트의 검색이나 비교를 실시할 때, 이것들 2 개의 순서가 등가로 취급해지는 것을 확인할 필요가 있습니다. 또, 복수의 엑센트를 가지는 문자도 처리할 필요가 있습니다. 문자의 결합 엑센트의 순서가 중요하게 되는 경우도 있으면, 엑센트의 순서가 달라도 실제로는 등가가 되는 경우도 있습니다.
같이 캐릭터 라인 「ffi」는, 3 개의 독립한 문자로서 encode 할 수 있습니다.
U+0066 LATIN SMALL LETTER F U+0066 LATIN SMALL LETTER F U+0069 LATIN SMALL LETTER I또는, 단일의 문자로서 encode 할 수 있습니다.
U+FB03 LATIN SMALL LIGATURE FFI합자 ffi 는, 구별 가능한 의미상의 문자는 아니고, 엄밀하게는 Unicode 에 포함되어야 하는 것이 아닙니다. 다만, 기존의 캐릭터 세트로 벌써 제공되고 있기 (위해)때문에, 그 호환성을 위해서(때문에) 포함되어 있습니다. Unicode 표준에서는, 이러한 문자를, 거기에 대응하는 의미상의 문자에 「호환」분해하는 것에 의해 식별합니다. 검색이나 비교를 실시할 때, 이러한 매핑을 사용할 필요가 자주 발생하겠지요.
상기의 최초의 예로 가리킨 것처럼,normalize
메소드로 텍스트를 정규 합성 형식 또는 정규 분해 형식으로 변환하면(자), 이러한 문제를 해결하는데 도움이 됩니다. 또, 이 메소드로 호환 분해를 실행해, 호환 문자를 그 등가인 문자와 같은 것으로서 취급할 수도 있습니다. 게다가normalize
메소드는 엑센트를 적절한 정규의 순서에 늘어놓고 바꾸므로, 사용자가 엑센트의 늘어놓고 대체에 대해 걱정할 필요는 없습니다.
W3C 에서는, NFC 로 텍스트를 교환하도록(듯이) 일반적으로 추천 하고 있습니다. 또, 종래의 문자 인코딩의 대부분은 사전 합성 형식만을 사용해, 그 자체에서는 연결 마크의 encode를 실시하지 않는 경우가 자주 있습니다. 이러한 문자 인코딩에의 변환을 실시하려면 , Unicode 텍스트를 NFC 에 정규화할 필요가 있습니다. 사용예에 대해서는, 「Unicode Standard Annex」를 참조해 주세요.
상자의 클래스의 개요 | |
---|---|
static class |
Normalizer.Form
이 열거는,「Unicode Standard Annex #15 — Unicode Normalization Forms」에 기술되고 있는 4 개의 Unicode 정규화 형식의 정수와 그것들에 액세스하기 위한 2 개의 메소드를 제공합니다. |
메소드의 개요 | |
---|---|
static boolean |
isNormalized (CharSequence src,
Normalizer.Form form)
지정된 char 값의 순서가 정규화되고 있는지 어떤지를 판정합니다. |
static String |
normalize (CharSequence src,
Normalizer.Form form)
char 값의 순서를 정규화합니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
메소드의 상세 |
---|
public static String normalize(CharSequence src, Normalizer.Form form)
src
- 정규화하는 char 값의 순서form
- 다음의 몇개의 정규화 형식.
Normalizer.Form.NFC
,
Normalizer.Form.NFD
,
Normalizer.Form.NFKC
,
Normalizer.Form.NFKD
NullPointerException
- src
또는 form
가
null 의 경우public static boolean isNormalized(CharSequence src, Normalizer.Form form)
src
- 체크 대상의 char 값의 순서form
- 다음의 몇개의 정규화 형식.
Normalizer.Form.NFC
,
Normalizer.Form.NFD
,
Normalizer.Form.NFKC
,
Normalizer.Form.NFKD
NullPointerException
- src
또는 form
가
null 의 경우
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 차의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요 : 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.