コード例 #1
0
        public static void RunTests()
        {
            string[] asciiStrings =
            {
                "Acimasizca acelya gorunen bir sacmaliktansa acilip sacilmak...",
                "Acisindan bagirip cagirarak sacma sozler soylemek.",
                "Bogurtuler opucukler.",
                "BUYUKCE BIR TOPAC TOPARLAGI VE DE YUMAGI yumagi.",
                "Bilgisayarlarda uc adet bellek turu bulunur. Islemci icerisinde yer alan yazmaclar, son derece hizli ancak c*k sinirli hafizaya sahiptirler. Islemcinin c*k daha yavas olan ana bellege olan erisim gereksinimini gidermek icin kullanilirlar. Ana bellek ise Rastgele erisimli bellek (REB veya RAM, Random Access Memory) ve Salt okunur bellek (SOB veya ROM, Read Only Memory) olmak uzere ikiye ayrilir. RAM'a istenildigi zaman yazilabilir ve icerigi ancak guc surdugu surece korunur. ROM'sa sâdece okunabilen ve onceden yerlestirilmis bilgiler icerir. Bu icerigi gucten bagimsiz olarak korur. Ornegin herhangi bir veri veya komut RAM'da bulunurken, bilgisayar donanimini duzenleyen BIOS ROM'da yer alir.",
                "1969 yilinda 15 yasindayken 1000 lira transfer parasi alarak Camialti Spor Kulubu'nde amator futbolcu oldu. Daha sonra IETT Spor Kulubu'nun amator futbolcusu oldu. 1976 yilinda, IETT sampiyon oldugunda, Erdogan da bu takimda oynamaktaydi. Erokspor Kulubunde de futbola devam etti ve 16 yillik futbol yasamini 12 Eylul 1980 Askeri Darbesi sonrasinda birakti ve daha fazla siyasi faaliyet..."
            };

            string[] turkishStrings =
            {
                "Acımasızca açelya görünen bir saçmalıktansa açılıp saçılmak...",
                "Acısından bağırıp çağırarak saçma sözler söylemek.",
                "Böğürtüler öpücükler.",
                "BÜYÜKÇE BİR TOPAÇ TOPARLAĞI VE DE YUMAĞI yumağı.",
                "Bilgisayarlarda üç adet bellek turu bulunur. İşlemci içerisinde yer alan yazmaçlar, son derece hızlı ancak çok sınırlı hafızaya sahiptirler. İşlemcinin çok daha yavaş olan ana bellege olan erişim gereksinimini gidermek için kullanılırlar. Ana bellek ise Rastgele erişimli bellek (REB veya RAM, Random Access Memory) ve Salt okunur bellek (SOB veya ROM, Read Only Memory) olmak üzere ikiye ayrılır. RAM'a istenildiği zaman yazılabilir ve içeriği ancak güç sürdüğü sürece korunur. ROM'sa sâdece okunabilen ve önceden yerleştirilmiş bilgiler içerir. Bu içeriği güçten bağımsız olarak korur. Örneğin herhangi bir veri veya komut RAM'da bulunurken, bilgisayar donanımını düzenleyen BİOS ROM'da yer alır.",
                "1969 yılında 15 yaşındayken 1000 lira transfer parası alarak Camialtı Spor Kulübü'nde amatör futbolcu oldu. Daha sonra İETT Spor Kulübü'nün amatör futbolcusu oldu. 1976 yılında, İETT şampiyon olduğunda, Erdoğan da bu takımda oynamaktaydı. Erokspor Kulübünde de futbola devam etti ve 16 yıllık futbol yaşamını 12 Eylül 1980 Askeri Darbesi sonrasında bıraktı ve daha fazla siyasi faaliyet..."
            };

            Deasciifier deasciifier = new Deasciifier();

            for (var i = 0; i < asciiStrings.Length; i++)
            {
                string resultString = deasciifier.DeAsciify(asciiStrings[i]);
                Console.WriteLine("Test Number {0} WAS {1}", i + 1,
                                  string.Equals(resultString, turkishStrings[i], StringComparison.Ordinal) ? "SUCCESSFUL" : "FAILED");
            }
        }
コード例 #2
0
        static void DosyaOkuma()
        {
            int i;

            string[] path = { @"c:\metinler\Pozitif\", @"c:\metinler\Negatif\", @"c:\metinler\Etkisiz\", @"c:\metinler\Kontrol\" };
            for (i = 0; i < path.Length; i++)
            {
                Dictionary <string, Dictionary <string, int> > tempDictionary = new Dictionary <string, Dictionary <string, int> >();
                DirectoryInfo di    = new DirectoryInfo(path[i]);
                FileInfo[]    files = di.GetFiles();

                foreach (FileInfo fi in files)
                {
                    Deasciifier deasciifier = new Deasciifier();
                    var         zemberek    = new Zemberek(new TurkiyeTurkcesi());
                    Dictionary <string, int> geciciKelimeler = new Dictionary <string, int>();
                    FileStream   fs   = new FileStream(path[i] + fi, FileMode.Open, FileAccess.Read);
                    StreamReader sr   = new StreamReader(fs, Encoding.GetEncoding("iso-8859-9"), false);
                    string       yazi = sr.ReadLine();
                    yazi = yazi.ToLower();
                    while (yazi != null)
                    {
                        char[]   karakterler = { ' ', ',', '.', '?', '!', ';', ':', '\n', '\t', '\"', '\'', '(', ')', '#', '^', '@', '+', '-', '*', '/', '’', '_', '-' };
                        string[] gecici      = yazi.Split(karakterler);

                        foreach (string s in gecici)
                        {
                            #region Turkcelestirmeden

                            /*
                             * if (!geciciKelimeler.ContainsKey(s))
                             *  geciciKelimeler.Add(s, 1);
                             * else
                             *  geciciKelimeler[s]++;
                             */
                            #endregion
                            #region Turkcelestirerek
                            if (zemberek.kelimeDenetle(s))
                            {
                                if (!geciciKelimeler.ContainsKey(s))
                                {
                                    geciciKelimeler.Add(s, 1);
                                }
                                else
                                {
                                    geciciKelimeler[s]++;
                                }
                            }
                            else
                            {
                                string duzelt = deasciifier.DeAsciify(s);
                                if (zemberek.kelimeDenetle(duzelt))
                                {
                                    if (!geciciKelimeler.ContainsKey(duzelt))
                                    {
                                        geciciKelimeler.Add(duzelt, 1);
                                    }
                                    else
                                    {
                                        geciciKelimeler[duzelt]++;
                                    }
                                }
                                else
                                {
                                    var oneriler = zemberek.oner(s);
                                    if (oneriler.Any())
                                    {
                                        duzelt = zemberek.oner(s)[0];

                                        if (!geciciKelimeler.ContainsKey(duzelt))
                                        {
                                            geciciKelimeler.Add(duzelt, 1);
                                        }
                                        else
                                        {
                                            geciciKelimeler[duzelt]++;
                                        }
                                    }
                                }
                            }
                            #endregion
                        }
                        yazi = sr.ReadLine();
                    }
                    sr.Close();
                    fs.Close();
                    tempDictionary.Add(fi.ToString(), geciciKelimeler);
                }
                siniflar.Add(path[i].Split('\\')[2], tempDictionary);
            }
        }