여러가지 한글 관련 기능들을 제공합니다.
Bluehill.Hangul
네임스페이스를 가져와 사용할 수 있습니다.
using Bluehill.Hangul;
global using
을 사용하면 각 파일에 추가할 필요 없이 프로젝트의 모든 파일에서 사용할 수 있습니다.
global using Bluehill.Hangul;
만약 특정 기능만 필요하다면 using static
을 사용할 수도 있습니다.
using static Bluehill.Hangul.Josa;
을/를, 이/가 등의 한글 조사 처리를 확장 메서드로 간단하게 할 수 있습니다.
다음의 9가지 메서드를 제공합니다.
using Bluehill.Hangul;
Console.WriteLine("성재".EunNeun() + " 내 친구이다."); // 성재는 내 친구이다.
Console.WriteLine("아버지".IGa() + " 방에 들어가신다."); // 아버지가 방에 들어가신다.
Console.WriteLine("소윤".I() + "네집 떡볶이"); // 소윤이네집 떡볶이
defaultJosa와 josaOnly 매개변수를 사용할 수 있습니다. defaultJosa는 마지막 글자가 한글 글자가 아닐 경우 (영문, 숫자, 한자, 한글 자모 등) 붙는 문자열이고 josaOnly를 true
로 설정하면 조사만 반환합니다.
using Bluehill.Hangul;
Console.WriteLine("na1307".EunNeun("은") + " 바보다."); // na1307은 바보다.
Console.WriteLine("百聞".I("(이/가)") + " 불여일견"); // 百聞(이/가) 불여일견
Console.WriteLine("사과".EulReul("을(를)", true) + " 깎는다."); // 를 깎는다.
Jongseong과 NoJongseongOrRieul은 커스텀 메서드입니다. 모든 매개변수를 제공해야 하며, null
값은 허용되지 않습니다.
Console.WriteLine("당신".Jongseong("은 누굽니까", "은 저희와 함께 하실 수 없습니다.", "는 저희와 함께 하실 수 있습니다.", false)); // 당신은 저희와 함께 하실 수 없습니다.
Console.WriteLine("무슨 소릴".NoJongseongOrRieul("", "", "를", false) + "하는 거야 지금"); // 무슨 소릴하는 거야 지금
Console.WriteLine("넌".Jongseong("내꺼야", "내꺼야", "저리가", true)); // 내꺼야
사실 일반적인 경우라면 쓸 일이 없을 것 같습니다.
한글 문자에서 초성 / 중성 / 종성 열거형을 얻고, 열거형을 한글 낱자로 변환할 수 있습니다.
const char gal = '갈';
Console.WriteLine(gal.Choseong()); // Giyeok
Console.WriteLine(gal.Jungseong()); // A
Console.WriteLine(gal.Jongseong()); // Rieul
Console.WriteLine(gal.Choseong().ToJamo()); // ㄱ
TODO