public JenisKata GetJenisKataFromScraptFile(string kata)
        {
            JenisKata retur = JenisKata.Unknown;

            HtmlAgilityPack.HtmlDocument htmldoc = new HtmlAgilityPack.HtmlDocument();
            string location = Lingkungan.getDataCacheKata() + kata.ToLower() + ".html";

            htmldoc.Load(location);
            List <string> toParse2 = new List <string>();

            try
            {
                foreach (HtmlNode node in htmldoc.DocumentNode.SelectNodes("//textarea[@id='jsdata']"))
                {
                    toParse2.AddRange(Regex.Split(node.ChildNodes[0].InnerHtml, @"[^A-Za-z0-9]").Where(i => i != string.Empty).ToList());
                }
                int x = 0;
                for (int i = 0; i < toParse2.Count - 1; i++)
                {
                    if (toParse2[i].ToLower().Equals(kata.ToLower()))
                    {
                        x = i;
                        break;
                    }
                }
                if (x > 0)
                {
                    for (int j = x; j < toParse2.Count - 2; j++)
                    {
                        if (toParse2[j - 2].ToLower().Equals("em") && toParse2[j - 2].ToLower().Equals("em"))
                        {
                            if (toParse2[j].ToLower().Equals("n"))
                            {
                                retur = JenisKata.Benda;
                                break;
                            }
                            else if (toParse2[j].ToLower().Equals("v"))
                            {
                                retur = JenisKata.Kerja;
                                break;
                            }
                            else if (toParse2[j].ToLower().Equals("a"))
                            {
                                retur = JenisKata.Sifat;
                                break;
                            }
                            else if (toParse2[j].ToLower().Equals("pron"))
                            {
                                retur = JenisKata.Ganti;
                                break;
                            }
                            else if (toParse2[j].ToLower().Equals("adv"))
                            {
                                retur = JenisKata.Keterangan;
                                break;
                            }
                            else if (toParse2[j].ToLower().Equals("p"))
                            {
                                retur = JenisKata.Tugas;
                                break;
                            }
                            else if (toParse2[j].ToLower().Equals("num"))
                            {
                                retur = JenisKata.Bilangan;
                                break;
                            }
                            //else if (toParse2[j].ToLower().Equals("aa"))
                            //{
                            //    retur = JenisKata.Ganti;
                            //    break;
                            //}
                        }
                    }
                }
                return(retur);
            }
            catch (Exception)
            {
                return(retur);
            }
        }
Beispiel #2
0
 public Term()
 {
     Index = new List <Location>();
     Jenis = JenisKata.Unknown;
 }