normalizer
unicode?
μ«μμ κΈμκ° 1(key):1(value)λ‘ λ§€νλ ν
μμ€ν€μ½λμ
0x41
=A
λ‘ λ§΅νλ κ² μ²λΌ, μμ€ν€ μ½λλ‘ ννν μ μλ λ¬Έμλ€μ μ«μλ‘ λ§΅νν΄λμ κ² (μ μΈκ³ λ¬Έμ λμ)νκΈμ κ²½μ° μ‘°ν©νμ μν μλͺ¨, μμ±νμ μν νκΈμ΄ λͺ¨λ ν¬ν¨λμ΄μμ.
μ«μμ
U+
μ λμ΄κ° λΆμ΄μμΌλ©΄ μ λμ½λλ‘ λ§΅νλμ΄μλ μ«μλΌλ μλ―ΈμΈλ―.U+0041
=A
UTF-8, UTF-16 ?
μ«μλ‘ μ΄λ£¨μ΄μ§ ν€λ₯Ό μ΄λ»κ² νννλ μ§ κ²°μ νλ μΈμ½λ© λ°©μ
A
λΌλ λ¬Έμλ..UTF-8
μμλ0x41
λ‘ ννλ¨κ°λ³λ°μ΄νΈ 1~4 byte μ¬μ©νκ³ μλλ°,Aμ κ²½μ° 1λ°μ΄νΈλ‘ ννμ΄ κ°λ₯νκΈ° λλ¬Έμ)
μ¦ U+0041 -> 0x41 λ‘ μΈμ½λ© λλ μλ―ΈμΈλ―
UTF-16
μ κ²½μ°,0x0041
λ‘ ννλ¨.λ§μ°¬κ°μ§λ‘ κ°λ³λ°μ΄νΈ 2~4 byte
μ°Έκ³
https://norux.me/31
https://namu.wiki/w/UTF-8
normalizer?
νν λ°©λ²μ΄ λ€λ₯Έ λ¬Έμλ€μ ν΅ν© νΉμ μ 리λ₯Ό μλ―Ένλλ―.
μ¦ μ΄λͺ¨μ§, νΉμλ¬Έμλ±μ μ κ±° νΉμ 곡백μΌλ‘ λμ²νλ μμ μ λ§νλ λ―.
μ νμν¨?
OS λ³λ‘ μ¬μ©νλ unicode μ κ·ν λ°©μμ΄ λ€λ₯Έ κ²½μ°κ° μλλ―. (i.g max osμμ λ§λ νκΈ νμΌμ, μλμ°μ μ μ‘νλ©΄ μλͺ¨κ° λΆλ¦¬λμ΄μλ κ²½μ°)
κ·Έλμ μ΄ λΆλΆμ νλλ‘ ν΅ν©ν΄μ£Όλ κ² νμν¨.
4κ°μ§ μ λμ½λ ν μ€νΈλ₯Ό μ κ·νλ λ°©μμ΄ μμ.
NFC: Normalization Form Canonical Composition
μ½λλ₯Ό μ μ€ λΆν΄ -> μ μ€ κ²°ν©
NFD: Normalization Form Canonical Decomposition
μ½λλ₯Ό μ μ€ λΆν΄
μ¦ λ°μ κ΅¬λ³ κΈ°νΈκ° λΆμ λ¬Έμκ° νλλ‘ μ²λ¦¬λμμ κ²½μ°μ λλμ΄ μ²λ¦¬(μ κ·ν) ν¨.
NFKC: Normalization Form Compatibility Composition
NFKD: Normalization Form Compatibility Decomposition
μ 첨λΆλ μ€ν¬λ¦°μ·μ 보면
o
λ¬Έμμμ λΆνΈκ° μμ.μ΄λ¬ν λ¬Έμκ° 4κ°μ§ λ°©μμ λ°λΌ μ΄λ»κ² μ κ·ν λλμ§ λ³΄μ¬μ€
μλ°μμλ
java.text.Normalizer
ν΄λμ€μμ ν΄λΉ κΈ°λ₯μ μ 곡νκ³ μμ.This class provides the method normalize which transforms Unicode text into an equivalent composed or decomposed form
μ°Έκ³
https://docs.oracle.com/javase/7/docs/api/java/text/Normalizer.html#:~:text=This%20class%20provides%20the%20method,%2315%20%E2%80%94%20Unicode%20Normalization%20Forms.
https://docs.oracle.com/javase/tutorial/i18n/text/normalizerapi.html
https://velog.io/@leejh3224/%EB%B2%88%EC%97%AD-%EC%9C%A0%EB%8B%88%EC%BD%94%EB%93%9C-%EC%8A%A4%ED%8A%B8%EB%A7%81%EC%9D%84-%EB%85%B8%EB%A9%80%EB%9D%BC%EC%9D%B4%EC%A7%95-%ED%95%B4%EC%95%BC%ED%95%98%EB%8A%94-%EC%9D%B4%EC%9C%A0
https://www.hungrydiver.co.kr/bbs/detail/develop?id=68&scroll=comment
Last updated
Was this helpful?