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

نسخة كاملة : الاستبدال من ملف نصي
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
هذا الكود سيستبدل اي شيء بأي شيء ؟
مثال لأستبدال كل A بـB في نص
كود :
Dim str As String = "ABC - CBA"
MsgBox(str & " (Before)")
str = str.Replace("A", "B")
MsgBox(str & " (After)")
اخي الحبيب انا اريد استبدال كم كبير من الكلمات . هل سأكتبها كلها في الكود ؟

فأردت ان يكون الاستبدال من ملف نصي خارجي
لقراءة ملف نصي:
كود :
Dim str As String = System.IO.File.ReadAllText("مسار الملف النصي")

و الكود في المشاركة أعلاه يمكن تطبيقه على نص أيضاً و ليس مجرد حرف
ما معنى ؟ Dim str As String = "ABC - CBA"
Dim
لتعريف متغير

str
أسم المتغير

As String
نوع المتغير String (متغير نصي)

= "ABC - CBA"
قيمته "ABC - CBA"
و ABC - CBA لا ترمز لشئ لكنها فقط قيمة المتغير
حاولت كتير جدا . هل يمكن عمل مثال ؟ بارك الله فيك
اعتقد ان هذا ما تريده اخى

كود :
On Error Resume Next
        '\\\ فتح الملف المصى الاول
        Dim str1 As String = System.IO.File.ReadAllText("مسار الملف الاول")
        '\\\ استبدال السطور برمز #
        str1 = Replace(str1, vbCrLf, "#")
        '\\\ فتح املف النصى الثانى
        Dim str2 As String = System.IO.File.ReadAllText("مسار الملف الثانى")
        '\\\ استبدال السطور برمز #
        str2 = Replace(str2, vbCrLf, "#")

        Dim vba1() As String
        Dim vba2() As String
        '\\\ عمل سبلت للرمز # لتحديد عدد الكلمات ف كلا الملفين
        vba1 = str1.Split("#")
        vba2 = str2.Split("#")
        '\\ بدا البحث عن كلمات الملف الاول ف التكست بوكس
        Dim word As String
        For i As Integer = 0 To vba1.Length - 1
            '\\\ تحديد الكلمة
            word = vba1(i)
            '\\\ البحث عن الكلمة ف التكست بوكس
            If TextBox1.Text.Contains(word) Then
                '\\\\ اذا تم ايجاد الكلمة
                Dim word2 As String
                '\\\ تحديد الكلمة المقابلة للكلمة ف الملف الثانى
                word2 = vba2(i)
                '\\\استبدال الكلمة الموجودة ف الملف الاول ب الكلمة الموجودة ف الملف الثانى
                TextBox1.Text = Replace(TextBox1.Text, word1, word2)
            End If
        Next
الصفحات : 1 2