🙂 İNSANLARIN EN HAYIRLISI INSANLARA FAYDALI OLANDIR 🙂

Ramazan HABER / C# RMOS / anne adı baba adı ayıklama

1-) C# RMOS - anne adı baba adı ayıklama

 

using System;

using System.IO;

using System.Text.RegularExpressions;

using System.Windows.Forms;

 

namespace WindowsFormsApp1

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }

 

        private void button1_Click(object sender, EventArgs e)

        {

            string text = @"asdasdasd

Anne Adı Mother's Name EMİNE

Baba Adı Father 's Name İHSAN

asdasd";

            string anneAd = getAdYaz(text, "ANNE", "MOTHER", "ARNE AD", "ANRE AD");

            string babaAd = getAdYaz(text, "BABA", "BAB4", "FATHER", "FATNER");

 

 

            Console.WriteLine("ANA : " + anneAd + System.Environment.NewLine + "   BABA : " + babaAd + System.Environment.NewLine);

        }

 

 

        public string getAdYaz(string text, string ic1, string ic2, string ic3, string ic4)

        {

            try

            {

                string Ad = "";

 

                text = Regex.Replace(text, @"[^A-Za-z_ğüşıöçĞÜŞİÖÇ\s<]", string.Empty);

 

                RegexOptions options = RegexOptions.None;

                Regex regex = new Regex("[ ]{2,}", options);

                text = regex.Replace(text, " ");

 

                string[] splits = text.Split(' ');

 

                string yeniText = "";

                for (int i = 0; i < splits.Length; i++)

                {

                    if (splits[i].Length > 1)

                    {

                        yeniText += splits[i] + " ";

                    }

                }

                yeniText = yeniText.Trim();

 

 

 

                using (StringReader reader = new StringReader(yeniText))

                {

                    string line;

 

                    bool sonraki = false;

 

                    while ((line = reader.ReadLine()) != null)

                    {

 

                        line = line.ToUpper().Trim();

 

 

                        if (line.Contains(ic1) || line.Contains(ic2) || line.Contains(ic3) || line.Contains(ic4) || sonraki)

                        {

                            if (sonraki)

                            {

                                Ad = line;

                                sonraki = false;

                                return Ad;

                            }

 

                            string[] splitim = line.Trim().Split(' ');

                            for (int i = 0; i < splitim.Length; i++)

                            {

                                splitim[i] = splitim[i].Trim();

                            }

 

 

                            switch (splitim.Length)

                            {

                                case 3:

                                    Ad = splitim[2];

                                    if (Ad.Equals("NAME"))

                                    {

                                        sonraki = true;

                                        continue;

                                    }

                                    return Ad;

                                case 4:

                                    Ad = splitim[3];

                                    if (Ad.Equals("NAME"))

                                    {

                                        sonraki = true;

                                        continue;

                                    }

                                    return Ad;

                                case 5:

                                    Ad = splitim[4];

                                    if (Ad.Equals("NAME"))

                                    {

                                        sonraki = true;

                                        continue;

                                    }

                                    return Ad;

                                case 6:

                                    Ad = splitim[4] + " " + splitim[5];

                                    if (Ad.Equals("NAME"))

                                    {

                                        sonraki = true;

                                        continue;

                                    }

                                    return Ad;

                                case 7:

                                    Ad = splitim[4] + " " + splitim[5] + " " + splitim[6];

                                    return Ad;

                                case 8:

                                    Ad = splitim[4] + " " + splitim[5] + " " + splitim[6] + " " + splitim[7];

                                    return Ad;

                            }

                        }

 

 

                    }

                }

                return Ad;

            }

            catch (Exception ex)

            {

                return "";

            }

        }

    }

}

 

 2022 Şubat 22 Salı
 343