using System.Globalization;
using System.Collections.Generic;
using System.Collections;
public class EmailComparison
public string originalEmail;
public string formattedEmail;
public static void Main()
TestMethod("kurumsal.iletisim@kocsistem.com.tr");
TestMethod("erinc.erenksoy@kocsistem.com.tr");
public static void TestMethod(string smtp)
var emailList = new List<string>();
var comparisonList = new List<EmailComparison>();
emailList.Add("Kurumsal.Iletisim@kocsistem.com.tr");
emailList.Add("erinc.erensoy@kocsistem.com.tr");
var smtpRemovedDiactrics = RemoveDiacritics(smtp).ToUpper();
for(var II=0; II<emailList.Count;II++)
var comparisonObject = new EmailComparison();
comparisonObject.originalEmail = emailList[II];
comparisonObject.formattedEmail = RemoveDiacritics(emailList[II]).ToUpper();
comparisonList.Add(comparisonObject);
var foundComparisonObject = comparisonList.Where((v=>v.formattedEmail==smtpRemovedDiactrics)).FirstOrDefault();
if(foundComparisonObject == null)
Console.WriteLine("Not Found");
Console.WriteLine("Found:"+foundComparisonObject.originalEmail);
public static string RemoveDiacritics(string text)
Encoding srcEncoding = Encoding.UTF8;
Encoding destEncoding = Encoding.GetEncoding(1252);
text = destEncoding.GetString(Encoding.Convert(srcEncoding, destEncoding, srcEncoding.GetBytes(text)));
string normalizedString = text.Normalize(NormalizationForm.FormD);
StringBuilder result = new StringBuilder();
for (int i = 0; i < normalizedString.Length; i++)
if (!CharUnicodeInfo.GetUnicodeCategory(normalizedString[i]).Equals(UnicodeCategory.NonSpacingMark))
result.Append(normalizedString[i]);
return result.ToString();