تقييم الموضوع :
  • 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 ك ب / التحميلات : 76)
الرد }}}
تم الشكر بواسطة:
#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


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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Heart استرجاع قاعدة بيانات محمد بن عطية 1 1,069 18-07-25, 04:30 AM
آخر رد: abuabdulrhman
  استفسارات عن قواعد البيانات مبتدئ بوحمد 0 1,008 06-11-24, 10:15 AM
آخر رد: بوحمد
  [C#.NET] مشكلة في مجلد قاعدة البيانات kamel1978 3 684 06-10-24, 06:26 PM
آخر رد: Taha Okla
  ما هو كود معرفة نوع البيانات من اكسس؟ justforit 6 1,046 23-05-24, 08:22 AM
آخر رد: مصمم هاوي
  [سؤال] حول مشكلة توافق نوع البيانات عند الاستعلام في اكسل justforit 4 695 23-05-24, 05:35 AM
آخر رد: justforit
  [سؤال] عدم إظهار الصور مع النص فى Listview من قاعدة البيانات alims 2 2,033 27-08-23, 12:22 PM
آخر رد: رضوان الجماعي
  [نقاش] مشاركة قاعدة بيانات SQL على شبكه داخليه morkoskhalaf 3 3,575 06-01-23, 03:20 AM
آخر رد: عبدالكريم برشدان
  قاعدة بيانات xml djelloul 3 3,166 07-11-22, 10:27 PM
آخر رد: Am7
  استفسار عن تخزين الوقت في قاعدة البيانات strongriseman 2 1,567 22-04-22, 07:27 PM
آخر رد: strongriseman
  [سؤال] مشكلة فى عرض الصورة من ادخل قاعدة البيانات alims 2 1,706 17-11-21, 10:09 AM
آخر رد: سعود

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


يقوم بقرائة الموضوع: