/// <summary> /// 지정된 단어에 맞는 조사를 자동으로 선택합니다. /// </summary> /// <param name="word">조사가 붙을 단어입니다.</param> /// <param name="josa">단어에 붙일 조사입니다.</param> /// <returns>선택된 조사입니다.</returns> public static string Select(string word, string josa) { var finalConsonant = Hangul.ExtractFinalConsonant(word[word.Length - 1]); switch (josa) { case "으로/로": if (finalConsonant == FinalConsonant.None || finalConsonant == FinalConsonant.ㄹ) { return("로"); } else { return("으로"); } default: string[] splitedJosa = josa.Split('/'); if (finalConsonant == FinalConsonant.None) { return(splitedJosa[1]); } else { return(splitedJosa[0]); } } }
/// <summary> /// 두 한글의 값이 같은지 확인합니다. /// </summary> /// <param name="value"></param> /// <returns></returns> public bool Equals(Hangul value) => Consonant == value.Consonant && Vowel == value.Vowel && FinalConsonant == value.FinalConsonant;