C# Kelime Heceleme İşlemi

C# Kelime Heceleme İşlemi

30 Kasım 2018 0 Yazar: Mustafa BÜKÜLMEZ
Toplam Görüntülenme : 87
Yaklaşık okuma süresi : 23 DK
C# Textbox Sadece Sayı Harf Girişi Yaptırmak
C# Kelime Heceleme İşlemi
5 (100%) 1 Oy

C# Kelime Heceleme İşlemi, dersim ile c sharp eğitimlerimize devam ediyorum. Sizlere de lazım olabilir diye düşünüp yayınlamak istedim. Bu dersimde kelimeleri hecelere ayırma işlemini göstereceğim.

C# Kelime Heceleme İşlemi

Öncelikle formumuza iki textbox ve bir buton ekleyelim.  Butona tıkladığımızda textbox1 de yazan cümleyi, textbox2 ye yazacağız. Bu işlem için ek bir namespace kullanmayacağız ve if else, substring ve ındexof metodlarını kullanacağız. Şimdi formumuzu hazırladıktan sonra aşağıdaki kodlarımızı kod kısmına yapıştırıyoruz.

        string CumleHeceleme(string Metin)
        {
            const string Sesli_Harfler = "aeıioöuüAEIİOÖUÜ";
            const string Sessiz_Harfler = "bçdfgğhjklmnprsştvyzBÇDFGĞHJKLMNPRSŞTVYZ";
            const string OzelKarakterler = "., ;\'!?\"";
            Metin = (Metin + " ");
            string Hece = "";
            int Index = 1;
            string AlinanHece = "";
            IslemeBasla:

            for (int i = Index; (i <= Metin.Length); i++)
            {
                //Önce karakterleri kontrol et. Eğer boşluk varsa döngüyü tekrar çalıştır
                if (((OzelKarakterler.IndexOf(Metin.Substring((i - 1), 1), 0) + 1) > 0))
                {
                    // boşluk ise direkt başa dön 
                    AlinanHece = Metin.Substring((Index - 1), 1);
                    Hece = (Hece + AlinanHece);
                    Index++;
                    goto IslemeBasla;
                }

                if (((Sessiz_Harfler.IndexOf(Metin.Substring((i - 1), 1), 0) + 1) > 0))
                {
                    // ilk harf sessiz 
                    if (((Sesli_Harfler.IndexOf(Metin.Substring(i, 1), 0) + 1) > 0))
                    {
                        // ikinci harf sesli 
                        if (((Sessiz_Harfler.IndexOf(Metin.Substring((i + 1), 1), 0) + 1) > 0))
                        {
                            // Üçüncü harf sessiz 
                            if (((Sesli_Harfler.IndexOf(Metin.Substring((i + 2), 1), 0) + 1) > 0))
                            {
                                // dördüncü  harf sesli ise ilk iki harf hecedir. 
                                AlinanHece = (Metin.Substring((Index - 1), 2) + "-");
                                Hece = (Hece + AlinanHece);
                                Index += 2;
                                goto IslemeBasla;
                            }

                            if (((Sessiz_Harfler.IndexOf(Metin.Substring((i + 2), 1), 0) + 1) > 0))
                            {
                                // dördüncü harf te sessiz 
                                if (((Sesli_Harfler.IndexOf(Metin.Substring((i + 3), 1), 0) + 1) > 0))
                                {
                                    // 5.harf sesli ise ilk 3 harf hecedir. 
                                    AlinanHece = (Metin.Substring((Index - 1), 3) + "-");
                                    Hece = (Hece + AlinanHece);
                                    Index += 3;
                                    goto IslemeBasla;
                                }
                                if (((Sessiz_Harfler.IndexOf(Metin.Substring((i + 3), 1), 0) + 1) > 0))
                                {
                                    // 5.harf sessiz ise ilk 4 harf hecedir. 
                                    AlinanHece = (Metin.Substring((Index - 1), 4) + "-");
                                    Hece = (Hece + AlinanHece);
                                    Index += 4;
                                    goto IslemeBasla;
                                }
                            }
                        }
                        if (((Sesli_Harfler.IndexOf(Metin.Substring((i + 1), 1), 0) + 1) > 0))
                        {
                            // Üçüncü harf sesli ise ilk iki harf hecedir. 
                            AlinanHece = (Metin.Substring((Index - 1), 2) + "-");
                            Hece = (Hece + AlinanHece);
                            Index += 2;
                            goto IslemeBasla;
                        }
                    }
                    if (((Sessiz_Harfler.IndexOf(Metin.Substring(i, 1), 0) + 1) > 0))
                    {
                        // ikinci de sessiz ise ilk 4 harf hecedir. 
                        AlinanHece = (Metin.Substring((Index - 1), 4) + "-");
                        Hece = (Hece + AlinanHece);
                        Index += 4;
                        goto IslemeBasla;
                    }
                }



                if (((Sesli_Harfler.IndexOf(Metin.Substring((i - 1), 1), 0) + 1) > 0))
                {
                    // ilk harf sesli 
                    if (((Sessiz_Harfler.IndexOf(Metin.Substring(i, 1), 0) + 1) > 0))
                    {
                        // ikinci harf sessiz 
                        if (((Sessiz_Harfler.IndexOf(Metin.Substring((i + 1), 1), 0) + 1) > 0))
                        {
                            // Üçüncü harf sessiz. 
                            if (((Sesli_Harfler.IndexOf(Metin.Substring((i + 2), 1), 0) + 1) > 0))
                            {
                                // Dördüncü harf sesli ise ilk iki harf hecedir. 
                                AlinanHece = (Metin.Substring((Index - 1), 2) + "-");
                                Hece = (Hece + AlinanHece);
                                Index += 2;
                                goto IslemeBasla;
                            }
                            if (((Sessiz_Harfler.IndexOf(Metin.Substring((i + 2), 1), 0) + 1) > 0))
                            {
                                // dördüncü harf te sessiz ise ilk üç harf hecedir. 
                                AlinanHece = (Metin.Substring((Index - 1), 3) + "-");
                                Hece = (Hece + AlinanHece);
                                Index += 3;
                                goto IslemeBasla;
                            }
                        }
                        if (((Sesli_Harfler.IndexOf(Metin.Substring((i + 1), 1), 0) + 1) > 0))
                        {
                            // Üçüncü harf sesli.Bu durumda ilk harf hece demektir. 
                            AlinanHece = (Metin.Substring((Index - 1), 1) + "-");
                            Hece = (Hece + AlinanHece);
                            Index++;
                            goto IslemeBasla;
                        }
                    }
                }
            }
            return Hece;
        }

Buradaki kodlar ile metoda gönderilen metini heceledikten sonra hecelenmiş halini bir textbox’a yazacak .

İlgili İçerik  C# Bilgisayar Bilgileri Almak

Bu konuda anlatılacak pek bir şey olmadığından bu dersimiz bu kadar. Zaten kodlar arasında açıklamalar mevcut.


C# Kelime Heceleme İşlemi, dersimizde bu kadar dostlar. Diğer derslerimizde görüşmek üzere.

C# eğitim seti sayfasına gitmek için tıklayabilirsiniz.

Ayrıca kısa süre önce tüm YENİ derslerimi tek bir proje içinde yapıp github’a yükleyeceğim demiştim. Bu dersimde o projenin içerisinde bir klasör olarak yerini almıştır. Buraya tıklayarak projeye ulaşabilirsiniz.

Sağlıcakla ve takipte kalın 😉

Bol kodlu günler..

C# Textbox Sadece Sayı Harf Girişi Yaptırmak
Mustafa Bükülmez

Liseden, Ağ Sistemleri ve Yönetimi bölümünden mezun oldum. Üniversiteden (2 yıllık), Bilgisayar Programcılığı bölümünden mezun oldum. Şuanda da AÖF, Yönetim Bilişim Sistemleri bölümünde okumaktayım.

Uzmanlık alanlarım; Windows Sistemleri, HTML, CSS, C# ve SQL’dir.

Hobi olarak uğraştığım genel konular, Photoshop, After Affects, Corel Draw’dır.Film, YABANCI dizi, Anime izlemeyi ve Manga okumayı severim. Arkadaşlarımla yürüyüş yapmayı ve grup olarak aktivitelere gitmeyi severim. Geri kalan zamanlarımın tümü bilgisayar karşısında geçer.