Example #1
0
        public void testHarfSil()
        {
            HarfDizisi kelime = new HarfDizisi("kedicikler", alfabe);

            kelime.harfSil(9);
            Assert.AreEqual(kelime.ToString(), "kedicikle");
            kelime.harfSil(0);
            Assert.AreEqual(kelime.ToString(), "edicikle");
            kelime.harfSil(3);
            Assert.AreEqual(kelime.ToString(), "ediikle");
        }
Example #2
0
 public void uygula(HarfDizisi dizi)
 {
     if (dizi.Length >= 2)
     {
         dizi.harfSil(dizi.Length - 2);
     }
 }
Example #3
0
        public void kelimeBicimlendir(Kelime kelime)
        {
            Kok        kok    = kelime.kok();
            HarfDizisi olusan = kelime.icerik();

            if (kok.tip().Equals(KelimeTipi.KISALTMA))
            {
                //cozumleme sirasinda eklenmis harf varsa onlari sil.
                int silinecek = kok.icerik().Length;
                if (kok.ozelDurumIceriyormu(TurkceKokOzelDurumTipi.KISALTMA_SON_SESSIZ))
                {
                    silinecek += 2;
                }
                if (kok.ozelDurumIceriyormu(TurkceKokOzelDurumTipi.KISALTMA_SON_SESLI))
                {
                    silinecek++;
                }
                //kelimenin olusan kismindan kokun icereigini sil.
                olusan.harfSil(0, silinecek);
                //simdi kokun orjinal halini ekle.
                olusan.ekle(0, new HarfDizisi(kok.asil(), alfabe));

                if (olusan.Length == kok.asil().Length)
                {
                    return;
                }
                //eger gerekiyorsa kesme isareti koy.
                if (!olusan.harf(kok.asil().Length - 1).Equals(alfabe.harf('.')))
                {
                    olusan.ekle(kok.asil().Length, alfabe.harf('\''));
                }
            }
            else if (kok.tip() == KelimeTipi.OZEL)
            {
                olusan.harfDegistir(0, alfabe.buyukHarf(olusan.ilkHarf()));
                if (kok.ozelDurumIceriyormu(TurkceKokOzelDurumTipi.KESMESIZ))
                {
                    return;
                }
                List <Ek> ekler = kelime.ekler();
                if (ekler.Count > 1)
                {
                    Ek ek = (Ek)ekler[1];
                    if (ek.iyelikEkiMi() || ek.halEkiMi())
                    {
                        int kesmePozisyonu = kok.icerik().Length;
                        olusan.ekle(kesmePozisyonu, alfabe.harf('\''));
                    }
                }
            }
            // ozel ic karakter iceren kokler icin bicimleme

/*        if (kok.ozelDurumlar().contains(TurkceKokOzelDurumlari.OZEL_IC_KARAKTER)) {
 *          //olusan ksimdan koku sil
 *          int silinecek = kok.icerik().length();
 *          olusan.harfSil(0, silinecek);
 *          //simdi kokun orjinal halini ekle.
 *          olusan.ekle(0, new HarfDizisi(kok.asil()));
 *      }*/
        }
Example #4
0
        public void testAradanSil()
        {
            HarfDizisi dizi = HarfDizisiYap("abcdefg");

            Assert.AreEqual(dizi.harfSil(2, 3).ToString(), "abfg");
            dizi = HarfDizisiYap("abcdefg");
            Assert.AreEqual(dizi.harfSil(4, 7).ToString(), "abcd");
            dizi = HarfDizisiYap("abcdefg");
            Assert.AreEqual(dizi.harfSil(0, 4).ToString(), "efg");
            dizi = HarfDizisiYap("abcdefg");
            Assert.AreEqual(dizi.harfSil(1, 4).ToString(), "afg");
            dizi.harfSil(20, 1);
            dizi.harfSil(-1, 2);
        }
Example #5
0
 public void uygula(HarfDizisi dizi)
 {
     if (dizi.Length > 0)
         dizi.harfSil(dizi.Length - 1);
 }
Example #6
0
 public void testHarfSil()
 {
     HarfDizisi kelime = new HarfDizisi("kedicikler", alfabe);
     kelime.harfSil(9);
     Assert.AreEqual(kelime.ToString(), "kedicikle");
     kelime.harfSil(0);
     Assert.AreEqual(kelime.ToString(), "edicikle");
     kelime.harfSil(3);
     Assert.AreEqual(kelime.ToString(), "ediikle");
 }