تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] إهمال التشكيل عند إحضار الكلمات من قاعدة أكسس
#1
السلام عليكم ورحمة الله وبركاته
المشكلة ببساطة أننى أعمل على برنامج قاموس للكلمات
يترجم من الانجليزية للعربية والعكس
المشكلة فى الترجمة من العربية للإنجليزية هى استحضار البرنامج
للكلمات العربية التى كتبت فى قاعدة البيانات بالتشكيل من أجل القراءة الصحيحة
فمثلاً هذه إحدى خانات قاعدة البيانات الخاصة بالبرنامج:

تمت برمجة القاموس على مطابقة ولو كلمة واحدة من المعنى العربى ليستحضر الانجليزى
ولكن المشكلة كما بالصورة فى كلمة (تَرك) فلابد أن يتم البحث عنها (ترك) بلا تشكيل
وإلا لا يطابقها البرنامج
كل ما أريده أن يهمل البرنامج التشكيل أثناء مطابقة الكلمات العربية

كود ال function الخاص بالترجمة:
كود :
   Function argetword(ByVal content As String) As String()

       Dim targets As List(Of String) = New List(Of String)
       Dim connection As New OleDbConnection
       Try
           connection = New OleDbConnection(connectionString)
           Using cmd As OleDbCommand = New OleDbCommand("SELECT [English] FROM [Words] WHERE [Arabic] Like '%' + @arabic + '%'", connection)
               cmd.Parameters.AddWithValue("@arabic", content)
               connection.Open()
               Using reader As System.Data.OleDb.OleDbDataReader = cmd.ExecuteReader()
                   Do Until Not reader.Read()
                       targets.Add(reader("English").ToString())
                   Loop
               End Using
               connection.Close()
           End Using
       Catch ex As Exception
           Console.WriteLine(ex.Message)
       Finally
           If connection IsNot Nothing Then
               If connection.State = ConnectionState.Open Then
                   connection.Close()
               End If
               connection.Dispose()
           End If
       End Try
       Return targets.ToArray()
   End Function

كود الزر المتحكم فى الترجمة:
كود :
   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

           TextBox1.Lines = argetword(TextBox2.Text)
   End Sub
الرد
تم الشكر بواسطة:
#2
سلام

مع اني غير مشجع على طريقت برنامجك في الترجمه لكن بمكنك استخدام الامر replace لكل لحذف علامات التشكيل
كود :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    TextBox1.Lines = argetword(removeHarakat(TextBox2.Text))

End Sub

Private Function removeHarakat(ByVal txt As String) As String
    For c = &H64B To &H655
        txt = txt.Replace(ChrW(c), "")
    Next
    Return txt
End Function

موفقين
متغيب
الرد
تم الشكر بواسطة: Doctor GME
#3
لقد أسأت فهمى يا أخى
لا أريد طريقة لإهمال التشكيل الذى يكتب فى textbox2
فمن الطبيعى أن من يبحث عن كلمة سيكتبها بدون تشكيل
وإنها إهمال التشكيل عند الاستحضار من قاعدة البيانات
فكما أوضحت عندما يتم كتابة (ترك) فى البرنامج
أريده أن يطابقها مع (تَرك) المشكلة دون مراعاة التشكيل
وأرجو إيضاح سبب عدم تشجيعك لطريقة الترجمة
وشكراً لك
الرد
تم الشكر بواسطة:
#4
سلام

اذا لماذا لا تغير الكلمات التي في قاعدت البيانات وتجعلها بدوت تشكيل
او ان تكتب الكلمه مرتين احداهما بالتشكيل والاخرى بدون
او تظيف عمود اخر للكلمات بدون تشكيل

سبب عدم تشجيعي لطريقت الترجمه:
اعتقد ان البرنامج يستبدل الكلمه في نفس المكان بدون ما راعي قواعد اللغه

وعتذر ان تطفلت بابداء راي دون ان يطلب مني.

موفقين
متغيب
الرد
تم الشكر بواسطة: Doctor GME , مبرمج بلا حدود
#5
فكرة ممتازة أخى
إضافة عمود بدون تشكيل يجعلنى لا أحتاج لتغيير الكود

على العكس رأيك يسعدنى فهو يكشف لى نواحى بالبرنامج لم ألاحظها
ولكنى أحب أن أوضح أن البرنامج متعدد المستويات
وهذه ال function تستخدم لترجمة كلمة واحدة فقط
ولا يمكن كتابة الجمل أثناء تنفيذها
أما ترجمة الجمل فلها function أخرى
وشكراً جزيلاً لك
الرد
تم الشكر بواسطة: مبرمج بلا حدود


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [كود] طريقة البحث عن صورة في قاعدة البيانات access باستعمال صورة أخرى technomedia 6 101 20-02-19, 04:01 PM
آخر رد: elgokr
  [VB.NET] فتح ارتباط تشعبي موجود ضمن قاعدة البيانات اكسس EMADSSS 2 76 17-02-19, 09:32 PM
آخر رد: EMADSSS
  [VB.NET] رفع قاعدة بيانات علي جوجل دريف والاتصال بها من أكثر من جهاز محمد صلاح ابراهيم 4 375 17-02-19, 02:31 PM
آخر رد: sendbad100
  [سؤال] عرض الصورة من قاعدة البيانات محمد اسماعيل 3 95 15-02-19, 06:28 AM
آخر رد: princelovelorn
  عدم الحفظ في قاعدة البيانات في الوندوز 64 بايت raaddawood 9 180 06-02-19, 01:16 PM
آخر رد: sendbad100
  عدم الحفظ في قاعدة البيانات في الوندوز 64 بايت raaddawood 2 77 05-02-19, 11:59 AM
آخر رد: raaddawood
  [سؤال] نص اتصال قاعدة sqlite بكلمة المرور princelovelorn 6 215 01-02-19, 03:50 AM
آخر رد: princelovelorn
  [VB.NET] ;سؤال كيفية تعديل المدخلات في (الداتا قريد فيو ) قبل الحفظ في قاعدة البيانات EYADISMAIL 4 274 16-01-19, 01:26 AM
آخر رد: EYADISMAIL
  إضافة حقول DateTimePicker الى قاعدة البيانات Hamoody 0 115 12-01-19, 02:21 AM
آخر رد: Hamoody
  [سؤال] اريد كود يختار سجل من جدول في قاعدة البيانات عشوائيا ويعرض في النموذج abdalla89 7 1,007 07-01-19, 04:31 PM
آخر رد: elgokr

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


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