تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
البحث في قاعدة البيانات مع تجاهل التشكيل
#11
كود :
Public Class Form1

   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       Me.BooksTableAdapter.Fill(Me.DataDataSet.Books)
       Me.DataGridView1.AutoGenerateColumns = False
       KeyboardArabic()
   End Sub

   Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
       Me.DataGridView1.DataSource = Nothing
       Me.Texts_books.Clear()
       If Me.TextBox1.Text.Trim.Equals(String.Empty) Then Return
       Dim q = Me.DataDataSet.Books.Where(Function(x) RemoveTextTashkeel(x.Texts_books).Contains(RemoveTextTashkeel(Me.TextBox1.Text.Trim)))
       If q.Count > 0 Then
           Me.DataGridView1.DataSource = q.CopyToDataTable
           Me.DataGridView1.ClearSelection()
           Me.Texts_books.Clear()
       End If
   End Sub

   Private Sub DataGridView1_SelectionChanged(sender As Object, e As EventArgs) Handles DataGridView1.SelectionChanged
       Me.Texts_books.Text = Me.DataGridView1.CurrentRow.Cells(1).Value
   End Sub

End Class
كود :
Module Module1

   Public Sub KeyboardArabic()
       InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages.Cast(Of InputLanguage). Where(Function(x) x.Culture.Name.StartsWith("ar")). FirstOrDefault()
   End Sub

   Public Function RemoveTextTashkeel(txt As String) As String
       txt = String.Concat(txt.Split(Enumerable.Range(1611, 8).Select(Function(x) ChrW(x)).ToArray))
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[اأإآ]", "ا")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[ؤو]", "و")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[ةه]", "ه")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[يئى]", "ى")
       Return txt
   End Function

End Module
الرد }}}
تم الشكر بواسطة: waelalmsry75
#12
(30-06-17, 05:20 PM)K39 كتب :
كود :
Public Class Form1

   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       Me.BooksTableAdapter.Fill(Me.DataDataSet.Books)
       Me.DataGridView1.AutoGenerateColumns = False
       KeyboardArabic()
   End Sub

   Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
       Me.DataGridView1.DataSource = Nothing
       Me.Texts_books.Clear()
       If Me.TextBox1.Text.Trim.Equals(String.Empty) Then Return
       Dim q = Me.DataDataSet.Books.Where(Function(x) RemoveTextTashkeel(x.Texts_books).Contains(RemoveTextTashkeel(Me.TextBox1.Text.Trim)))
       If q.Count > 0 Then
           Me.DataGridView1.DataSource = q.CopyToDataTable
           Me.DataGridView1.ClearSelection()
           Me.Texts_books.Clear()
       End If
   End Sub

   Private Sub DataGridView1_SelectionChanged(sender As Object, e As EventArgs) Handles DataGridView1.SelectionChanged
       Me.Texts_books.Text = Me.DataGridView1.CurrentRow.Cells(1).Value
   End Sub

End Class
كود :
Module Module1

   Public Sub KeyboardArabic()
       InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages.Cast(Of InputLanguage). Where(Function(x) x.Culture.Name.StartsWith("ar")). FirstOrDefault()
   End Sub

   Public Function RemoveTextTashkeel(txt As String) As String
       txt = String.Concat(txt.Split(Enumerable.Range(1611, 8).Select(Function(x) ChrW(x)).ToArray))
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[اأإآ]", "ا")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[ؤو]", "و")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[ةه]", "ه")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[يئى]", "ى")
       Return txt
   End Function

End Module

ممتاز أخي
لكن الكود بحاجة إلى بعض التعديلات

الآن إذا بحثت عن "احمد" بدون همزة
تظهر لي جميع النتائج "احمد" ، "أحمد" ، "آحمد" ، "إحمد"
وهذا هو المطلوب



لكن إذا بحثت عن "أحمد" أو "آحمد" أو  "إحمد" لا يعطيني أي نتيجة



فنريد أن نعرف البرنامج أنه عند البحث بتجاهل الهمزات لا فرق بين أ إ آ ا

وجزاك الله خيرا


الملفات المرفقة
.rar   RemoveFieldTashkeel.rar (الحجم : 182.77 ك ب / التحميلات : 69)
الرد }}}
تم الشكر بواسطة:
#13
http://vb4arb.com/vb/showthread.php?tid=...#pid101711
الرد }}}
تم الشكر بواسطة: waelalmsry75
#14
(01-07-17, 12:07 AM)K39 كتب : http://vb4arb.com/vb/showthread.php?tid=...#pid101711

ماذا تقصد أخي؟
الرد }}}
تم الشكر بواسطة:
#15
(30-06-17, 06:49 PM)waelalmsry75 كتب :
(30-06-17, 05:20 PM)K39 كتب :
كود :
Public Class Form1

   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       Me.BooksTableAdapter.Fill(Me.DataDataSet.Books)
       Me.DataGridView1.AutoGenerateColumns = False
       KeyboardArabic()
   End Sub

   Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
       Me.DataGridView1.DataSource = Nothing
       Me.Texts_books.Clear()
       If Me.TextBox1.Text.Trim.Equals(String.Empty) Then Return
       Dim q = Me.DataDataSet.Books.Where(Function(x) RemoveTextTashkeel(x.Texts_books).Contains(RemoveTextTashkeel(Me.TextBox1.Text.Trim)))
       If q.Count > 0 Then
           Me.DataGridView1.DataSource = q.CopyToDataTable
           Me.DataGridView1.ClearSelection()
           Me.Texts_books.Clear()
       End If
   End Sub

   Private Sub DataGridView1_SelectionChanged(sender As Object, e As EventArgs) Handles DataGridView1.SelectionChanged
       Me.Texts_books.Text = Me.DataGridView1.CurrentRow.Cells(1).Value
   End Sub

End Class
كود :
Module Module1

   Public Sub KeyboardArabic()
       InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages.Cast(Of InputLanguage). Where(Function(x) x.Culture.Name.StartsWith("ar")). FirstOrDefault()
   End Sub

   Public Function RemoveTextTashkeel(txt As String) As String
       txt = String.Concat(txt.Split(Enumerable.Range(1611, 8).Select(Function(x) ChrW(x)).ToArray))
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[اأإآ]", "ا")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[ؤو]", "و")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[ةه]", "ه")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[يئى]", "ى")
       Return txt
   End Function

End Module

ممتاز أخي
لكن الكود بحاجة إلى بعض التعديلات

الآن إذا بحثت عن "احمد" بدون همزة
تظهر لي جميع النتائج "احمد" ، "أحمد" ، "آحمد" ، "إحمد"
وهذا هو المطلوب



لكن إذا بحثت عن "أحمد" أو "آحمد" أو  "إحمد" لا يعطيني أي نتيجة



فنريد أن نعرف البرنامج أنه عند البحث بتجاهل الهمزات لا فرق بين أ إ آ ا

وجزاك الله خيرا

أخي الكريم
الكود بحاجة إلى بعض التعديلات
يسر الله لك العمل عليه ونفعنا جميعا
الرد }}}
تم الشكر بواسطة:
#16
(01-07-17, 11:43 AM)waelalmsry75 كتب :
(30-06-17, 06:49 PM)waelalmsry75 كتب :
(30-06-17, 05:20 PM)K39 كتب :
كود :
Public Class Form1

   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       Me.BooksTableAdapter.Fill(Me.DataDataSet.Books)
       Me.DataGridView1.AutoGenerateColumns = False
       KeyboardArabic()
   End Sub

   Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
       Me.DataGridView1.DataSource = Nothing
       Me.Texts_books.Clear()
       If Me.TextBox1.Text.Trim.Equals(String.Empty) Then Return
       Dim q = Me.DataDataSet.Books.Where(Function(x) RemoveTextTashkeel(x.Texts_books).Contains(RemoveTextTashkeel(Me.TextBox1.Text.Trim)))
       If q.Count > 0 Then
           Me.DataGridView1.DataSource = q.CopyToDataTable
           Me.DataGridView1.ClearSelection()
           Me.Texts_books.Clear()
       End If
   End Sub

   Private Sub DataGridView1_SelectionChanged(sender As Object, e As EventArgs) Handles DataGridView1.SelectionChanged
       Me.Texts_books.Text = Me.DataGridView1.CurrentRow.Cells(1).Value
   End Sub

End Class
كود :
Module Module1

   Public Sub KeyboardArabic()
       InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages.Cast(Of InputLanguage). Where(Function(x) x.Culture.Name.StartsWith("ar")). FirstOrDefault()
   End Sub

   Public Function RemoveTextTashkeel(txt As String) As String
       txt = String.Concat(txt.Split(Enumerable.Range(1611, 8).Select(Function(x) ChrW(x)).ToArray))
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[اأإآ]", "ا")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[ؤو]", "و")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[ةه]", "ه")
       txt = System.Text.RegularExpressions.Regex.Replace(txt, "[يئى]", "ى")
       Return txt
   End Function

End Module

ممتاز أخي
لكن الكود بحاجة إلى بعض التعديلات

الآن إذا بحثت عن "احمد" بدون همزة
تظهر لي جميع النتائج "احمد" ، "أحمد" ، "آحمد" ، "إحمد"
وهذا هو المطلوب



لكن إذا بحثت عن "أحمد" أو "آحمد" أو  "إحمد" لا يعطيني أي نتيجة



فنريد أن نعرف البرنامج أنه عند البحث بتجاهل الهمزات لا فرق بين أ إ آ ا

وجزاك الله خيرا

أخي الكريم
الكود بحاجة إلى بعض التعديلات
يسر الله لك العمل عليه ونفعنا جميعا

تذكير للإخوة الكرام
الرد }}}
تم الشكر بواسطة:
#17
http://vb4arb.com/vb/showthread.php?tid=...#pid101711


الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] عدم إظهار الصور مع النص فى Listview من قاعدة البيانات alims 2 1,587 27-08-23, 12:22 PM
آخر رد: رضوان الجماعي
  [نقاش] مشاركة قاعدة بيانات SQL على شبكه داخليه morkoskhalaf 3 3,025 06-01-23, 03:20 AM
آخر رد: عبدالكريم برشدان
  قاعدة بيانات xml djelloul 3 2,805 07-11-22, 10:27 PM
آخر رد: Am7
  استفسار عن تخزين الوقت في قاعدة البيانات strongriseman 2 1,134 22-04-22, 07:27 PM
آخر رد: strongriseman
  [سؤال] مشكلة فى عرض الصورة من ادخل قاعدة البيانات alims 2 1,271 17-11-21, 10:09 AM
آخر رد: سعود
  استعلام يرجع اسماء الاعمدة و نوع البيانات في جدول معين بسام محمدغانم 0 970 23-10-21, 01:43 AM
آخر رد: بسام محمدغانم
  مشكلة ظهور بياانات حقلين في قاعدة بيانات على شكل علامة استفهام bassant 5 1,635 17-10-21, 02:07 PM
آخر رد: abubasilIraq
  تحويل multiline text الى single line في عمود في قاعدة بيانات sql server bassant 0 960 07-09-21, 04:36 PM
آخر رد: bassant
  الحفظ فى قاعدة البيانات اسلام الكبابى 10 2,360 06-09-21, 06:52 PM
آخر رد: اسلام الكبابى
  [Acces2010] عمل قاعدة بيانات لنظام غيابات الطلبة hassan karim 1 1,935 31-08-21, 04:47 AM
آخر رد: a7med saba

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم