romanize
문자열 전체를 로마자로 변환하는 편의 함수입니다. 기본revised 모드는 프로젝트 루트의 로마자_표기법_규정.pdf를 기준으로 구현한 국어의 로마자 표기법을 따릅니다.
Romanizer
여러 문자열을 같은 규칙으로 반복 변환할 때 쓰는 클래스입니다.메서드
revised 모드
general: 일반 문자열 기준, 발음 변화를 반영한 기본 모드proper: 고유 명사에서ㄱ, ㄷ, ㅂ + ㅎ예외를 다루는 모드name: 인명처럼 내부 음운 변화를 반영하지 않고 적는 모드admin:-do,-si,-gun같은 행정 구역 단위를 붙임표와 함께 적는 모드
capitalize=True: 각 단어 첫 글자를 대문자로 변환disambiguate=True: 혼동 방지용 붙임표 사용name_hyphen=True: 인명 모드에서 이름 음절 사이에 붙임표 사용admin_omit_suffix=True: 행정 구역 모드에서시,군,읍생략
system생략 시:revisedmode생략 시:generalcapitalize생략 시:Falsedisambiguate생략 시:Falsename_hyphen생략 시:Falseadmin_omit_suffix생략 시:False
Romanizer(...) 생성자에도 그대로 적용됩니다.
지원 규칙
revisedmrmccuneyaleacademic
system별 예시와 결과
mode별 예시와 결과
옵션별 예시와 결과
예시
규정 예시와 대응
주의할 점
general은 일반 문자열용입니다.- 인명, 행정 구역, 일부 고유 명사는 규정의 예외가 있으므로
mode를 맞춰 쓰는 편이 정확합니다. capitalize=True를 주면 각 단어의 첫 글자를 대문자로 바꿉니다.disambiguate=True를 주면중앙 -> jung-ang,세운 -> se-un처럼 혼동을 줄이기 위한 붙임표를 넣을 수 있습니다.name_hyphen=True를 주면Min Yongha대신Min Yong-ha처럼 적을 수 있습니다.admin_omit_suffix=True를 주면Cheongju-si대신Cheongju처럼 적을 수 있습니다.