منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : كود حذف الحروف المكررة المتتالية في الجملة
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله وبركاته

الحمدلله قد رجعت بعد غياب سنوات كانت بسبب ظروف مدينتي وقد اشتقت لاخواني كثيرآ وان شاء الله اكون متواجد معكم وان شاء الله اساهم في نشر العلم

اقدم لكم كود من تصميمي للتحقق من وجود حروف مكررة متتالية وحذف هذه الحروف للغة العربية
الغرض من الكود في الغالب للتحقق من تشابه النصوص لان بعض الكلمات هي اساسآ تحتوي على احرف مكررة متتالية مثل (الله,الليل,تتابع,...الخ)وانا كنت استخدم هالدالة في مسابقة للأسئلة حتى يعطي اجابة صحيحة بغض النظر عن خطأ الكلمة في الجواب ويعطيك الجملة بدون الحروف المكررة مثال:
الكلمة أأااآلعررررأااق ترجع الدالة بالكلمة العراق
وكما في الصورة هذه الجملة

اولا نستدعي فضاء الاسماء
كود :
Imports System.Text.RegularExpressions

ثم نضع
هذه الدالتين  
كود :
Function RemoveSame(ByVal txt As String) As String
       Do While Re(txt) <> ""
           txt = txt.Replace(Re(txt), Re(txt).Chars(0))
       Loop
       Return txt
   End Function
   Function Re(ByVal txt As String) As String
       On Error Resume Next
       Return Regex.Match(txt, "ب{2,}|ا{2,}|ت{2,}|ث{2,}|ج{2,}|ح{2,}|خ{2,}|د{2,}|ذ{2,}|ر{2,}|ز{2,}|س{2,}|ش{2,}|ص{2,}|ض{2,}|ط{2,}|ظ{2,}|ع{2,}|غ{2,}|ف{2,}|ق{2,}|ك{2,}|ل{2,}|م{2,}|ن{2,}|ه{2,}|و{2,}|ؤ{2,}|ي{2,}|ء{2,}|آ{2,}|أ{2,}|إ{2,}|ى{2,}|ئ{2,}|ة{2,}").Value
   End Function
يمكن استدعاء الدالة بهذا الكود
كود :
TextBox2.Text = RemoveSame(TextBox1.Text) 'استدعاء الدالة
اتمنى الافادة للجميع ان شاء الله
اخوكم عبدالرحمن


وعليكم السلام ورحمة الله وبركاته

عودة حميده اخى الفاضل 3booody
ولعل خيراً بامر الله فى انتظار رؤية ما تقدمه من علماً للخير
فجزاك الله خيراً اخى الحبيب وزادك الله علماً دائماً

تحياتى لك
وتمنياتى لك التوفيق
وجزاك بالمثل اخي العزيز الجوكر
ربي يزيدك علمآ وتواضعآ ونفع بك الامة
شكرآ لك
الشكر لله والحمد لله
والحمد لله على كل حال

اللهم امين لى ولك وللجميع بامر الله

تحياتى لك
وتمنياتى لك التوفيق
(15-10-19, 08:35 PM)3booody كتب : [ -> ]
السلام عليكم ورحمة الله وبركاته

الحمدلله قد رجعت بعد غياب سنوات كانت بسبب ظروف مدينتي وقد اشتقت لاخواني كثيرآ وان شاء الله اكون متواجد معكم وان شاء الله اساهم في نشر العلم

اقدم لكم كود من تصميمي للتحقق من وجود حروف مكررة متتالية وحذف هذه الحروف للغة العربية
الغرض من الكود في الغالب للتحقق من تشابه النصوص لان بعض الكلمات هي اساسآ تحتوي على احرف مكررة متتالية مثل (الله,الليل,تتابع,...الخ)وانا كنت استخدم هالدالة في مسابقة للأسئلة حتى يعطي اجابة صحيحة بغض النظر عن خطأ الكلمة في الجواب ويعطيك الجملة بدون الحروف المكررة مثال:
الكلمة أأااآلعررررأااق ترجع الدالة بالكلمة العراق
وكما في الصورة هذه الجملة

اولا نستدعي فضاء الاسماء
كود :
Imports System.Text.RegularExpressions

ثم نضع
هذه الدالتين  
كود :
Function RemoveSame(ByVal txt As String) As String
       Do While Re(txt) <> ""
           txt = txt.Replace(Re(txt), Re(txt).Chars(0))
       Loop
       Return txt
   End Function
   Function Re(ByVal txt As String) As String
       On Error Resume Next
       Return Regex.Match(txt, "ب{2,}|ا{2,}|ت{2,}|ث{2,}|ج{2,}|ح{2,}|خ{2,}|د{2,}|ذ{2,}|ر{2,}|ز{2,}|س{2,}|ش{2,}|ص{2,}|ض{2,}|ط{2,}|ظ{2,}|ع{2,}|غ{2,}|ف{2,}|ق{2,}|ك{2,}|ل{2,}|م{2,}|ن{2,}|ه{2,}|و{2,}|ؤ{2,}|ي{2,}|ء{2,}|آ{2,}|أ{2,}|إ{2,}|ى{2,}|ئ{2,}|ة{2,}").Value
   End Function
يمكن استدعاء الدالة بهذا الكود
كود :
TextBox2.Text = RemoveSame(TextBox1.Text) 'استدعاء الدالة
اتمنى الافادة للجميع ان شاء الله
اخوكم عبدالرحمن



ارجو وضع هذه الدالة في فورم فيجوال بيسك 6 حتى تتضح الصورة 
مع امكانية تحميل المرفق
و عليكم السلام ورحمة الله وبركاته

جزاك الله خير ، و زادك علماً