Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Hiragana
- {
- private static readonly string[,] table = new string[,] {
- {"kya","きゃ"}, {"kyu","きゅ"}, {"kyo","きょ"}, {"gya","ぎゃ"}, {"gyu","ぎゅ"}, {"gyo","ぎょ"},
- {"sha","しゃ"}, {"shu","しゅ"}, {"sho","しょ"}, {"cha","ちゃ"}, {"chu","ちゅ"}, {"cho","ちょ"},
- {"nya","にゃ"}, {"nyu","にゅ"}, {"nyo","にょ"}, {"mya","みゃ"}, {"myu","みゅ"}, {"myo","みょ"},
- {"hya","ひゃ"}, {"hyu","ひゅ"}, {"hyo","ひょ"}, {"bya","びゃ"}, {"byu","びゅ"}, {"byo","びょ"},
- {"pya","ぴゃ"}, {"pyu","ぴゅ"}, {"pyo","ぴょ"}, {"rya","りゃ"}, {"ryu","りゅ"}, {"ryo","りょ"},
- {"shi", "し"}, {"chi", "ち"}, {"tsu", "つ"},
- {"ka","か"}, {"ki","き"}, {"ku","く"}, {"ke","け"}, {"ko","こ"},
- {"ga","が"}, {"gi","ぎ"}, {"gu","ぐ"}, {"ge","げ"}, {"go","ご"},
- {"sa","さ"}, {"si","し"}, {"su","す"}, {"se","せ"}, {"so","そ"},
- {"za","ざ"}, {"zi","じ"}, {"ji","じ"}, {"zu","ず"}, {"ze","ぜ"}, {"zo","ぞ"},
- {"ta","た"}, {"ti","ち"}, {"tu","つ"}, {"te","て"}, {"to","と"},
- {"da","だ"}, {"di","ぢ"}, {"du","づ"}, {"de","で"}, {"do","ど"},
- {"na","な"}, {"ni","に"}, {"nu","ぬ"}, {"ne","ね"}, {"no","の"},
- {"ma","ま"}, {"mi","み"}, {"mu","む"}, {"me","め"}, {"mo","も"},
- {"ha","は"}, {"hi","ひ"}, {"hu","ふ"}, {"fu","ふ"}, {"he","へ"}, {"ho","ほ"},
- {"ba","ば"}, {"bi","び"}, {"bu","ぶ"}, {"be","べ"}, {"bo","ぼ"},
- {"pa","ぱ"}, {"pi","ぴ"}, {"pu","ぷ"}, {"pe","ぺ"}, {"po","ぽ"},
- {"ra","ら"}, {"ri","り"}, {"ru","る"}, {"re","れ"}, {"ro","ろ"},
- {"ya","や"}, {"yu","ゆ"}, {"yo","よ"}, {"wa","わ"}, {"wo","を"}, {"nn","ん"},
- {"a" ,"あ"}, {"i" ,"い"}, {"u" ,"う"}, {"e" ,"え"}, {"o" ,"お"},
- {"t","っ"}, {"k","っ"}, {"p","っ"}, {"s","っ"}, {"h","っ"}, {"n","ん"},
- // This is to ignore punctuation etc, add as necessary
- {" ", " "}, {",",","}, {".","."}, {"!", "!"}, {"\n", "\n"}, {"-","-"}};
- public static bool IsHiragana(string h)
- {
- bool valid;
- foreach (char c in h)
- {
- valid = false;
- for (int i = 0; i < table.Length / 2; i++)
- {
- if (table[i, 1].Contains(c.ToString()))
- {
- valid = true;
- break;
- }
- }
- if (valid == false) return false;
- }
- return true;
- }
- public static string Parse(string r)
- {
- r = r.ToLower();
- for (int i = 0; i < (table.Length / 2); i++) r = r.Replace(table[i, 0], table[i, 1]);
- return r;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment