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

نسخة كاملة : كود برنامج string يبحث و يحذف
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
مساء الخير ..
طلباتي في المنتدى لن تنتهي الى ما احترف الفيجوال بإذن الله خلال هذه السنه لتجهيز نفسي لمشروع في الجامعة للتخرج .. Angel

السؤال : 

 Write a program that read this string "welcome to my world" then remove any character chosen by the user.
هذه صورة للفورم المطلوب : 




انا بداية جربت هذا الكود : 


كود :
Private Sub resultButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles resultButton1.Click
       stringLabel1.Text = " "
       Dim a, b, c, d As String
       c = "welcome to my world"
       stringLabel1.Text = c
       a = characterTextBox1.Text
       b = InStr(c, a)
       d = c.Substring(b)
       resultLabel1.Text = d

   End Sub


لكن الخطأ فيه اني مثلا دخلت ال o يروح يبحث عن اول o فقط ويحذف ماقبلها  Huh
انا اللي ابغاه كيف يحذف لي الحرف اللي اطلبه من كل الجمله  Huh Huh
يارب فهمتوا علي  Sad
جربي هذا الكود
كود :
Private Sub resultButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles resultButton1.Click
        stringLabel1.Text = " "
        Dim a, b(), c, d As String
        c = "welcome to my world"
        stringLabel1.Text = c
        a = characterTextBox1.Text
        b = c.Split(a)
        d = String.Join(Nothing, b)
        resultLabel1.Text = d
    End Sub
(07-11-16, 10:51 PM)ممدوح كتب : [ -> ]جربي هذا الكود
كود :
   Private Sub resultButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles resultButton1.Click
       stringLabel1.Text = " "
       Dim a, b(), c, d As String
       c = "welcome to my world"
       stringLabel1.Text = c
       a = characterTextBox1.Text
       b = c.Split(a)
       d = String.Join(Nothing, b)
       resultLabel1.Text = d
   End Sub
مشى معاي الكود بالتمام ماشاء الله عليك    

بس ياليت تشرح لي ليش استخدمت فانكشون التفريق والتجميع ؟ 

لازم افهم كل خطوة عشان يثبت برأسي كل شي  
اعتذر لعدم الشرح، كنت على عجالة

جعلت b مصفوفة لأنها ستحتوي ناتج امر التفريق Split والذي سيكون مصفوفة، ومن أثار الأمر Split أنه لن يحتوي على الفاصل الذي استخدم في التقطيع،

وبطبيعة الحالة لابد من تجميع المصفوفة الناتجة، فتم استخدام امر التجميع String.Join

طبعا توجد أساليب أخرى ولكنها متقدمة ولم أشأ استخدامها لألى تشوش عليك حالياً

لا أدري هل نصحي لك في مكانه لو قلت بأن تستخدمي مسميات ذات معنى للمتغيرات بدلا من الأحرف التي تسبب التوهات لو طال الكود
ممكن تستخدم replace ، و استبدال الحرف المطلوب بلاشيء "" .
(07-11-16, 11:14 PM)ممدوح كتب : [ -> ]اعتذر لعدم الشرح، كنت على عجالة

جعلت b مصفوفة لأنها ستحتوي ناتج امر التفريق Split والذي سيكون مصفوفة، ومن أثار الأمر Split أنه لن يحتوي على الفاصل الذي استخدم في التقطيع،

وبطبيعة الحالة لابد من تجميع المصفوفة الناتجة، فتم استخدام امر التجميع String.Join

طبعا توجد أساليب أخرى ولكنها متقدمة ولم أشأ استخدامها لألى تشوش عليك حالياً

لا أدري هل نصحي لك في مكانه لو قلت بأن تستخدمي مسميات ذات معنى للمتغيرات بدلا من الأحرف التي تسبب التوهات لو طال الكود

اشكرك على الشرح  Heart Heart 
واشكر لك نصيحتك الاحرف هذه فقط لتعليم نفسي امما في الاكواد 
المطلوبه في الجامعه لابد من تسميات لها معنى لان ذلك يؤثر على الحل 
هذه فقط لاني مستعجله وشكرا مرة اخرى على نصيحتك وبإذن الله سأعتمدها 
حتى في حلي السريع

(07-11-16, 11:26 PM)myalsailamy كتب : [ -> ]ممكن  تستخدم  replace  ، و استبدال الحرف المطلوب بلاشيء  ""  .

وهذه احدى طرق الحل سأجربها ان شاء الله شككرا لك
أهلا بك أخي محمد
وهذا الكود باستخدام Replace الذي أشار إليه أخي محمد
كود :
Private Sub resultButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles resultButton1.Click
        stringLabel1.Text = " "
        Dim a, c, d As String
        c = "welcome to my world"
        stringLabel1.Text = c
        a = characterTextBox1.Text
        d = c.Replace(a, Nothing)
        resultLabel1.Text = d
    End Sub

بالنسبة للأخت الكريمة تعمدت أن أضع لها حلولا بناء على ما أراه من الكود لاعتقادي أن المطلوب يعتمد على الأوامر المتعلقة بالوحدة الحالية من المنهج الدراسي،
(07-11-16, 11:34 PM)ممدوح كتب : [ -> ]أهلا بك أخي محمد
وهذا الكود باستخدام Replace الذي أشار إليه أخي محمد
كود :
   Private Sub resultButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles resultButton1.Click
       stringLabel1.Text = " "
       Dim a, c, d As String
       c = "welcome to my world"
       stringLabel1.Text = c
       a = characterTextBox1.Text
       d = c.Replace(a, Nothing)
       resultLabel1.Text = d
   End Sub

هل يوجد شي اكبر من الشكر لاقدمه لك استاذي العزيز ؟ 
ونعم الرجل شكككرا من الاعممماق وشكرا لاتوفي حقك ): ❤️❤️❤️
أشكرك أختي الكريمة،

وتكفي الدعوات الطيبة وخصوصاً للقائمين على هذا المنتدى المجاني وبدون مقابل رجاء الثواب من عند الله،

وفي انتظار أسئلة أخرى، ولا يوجد حرج من كثرتها، فجميع الاعضاء هنا يسعدون بتقديم المعلومة والحلول.
(07-11-16, 11:48 PM)ممدوح كتب : [ -> ]أشكرك أختي الكريمة،

وتكفي الدعوات الطيبة وخصوصاً للقائمين على هذا المنتدى المجاني وبدون مقابل رجاء الثواب من عند الله،

وفي انتظار أسئلة أخرى، ولا يوجد حرج من كثرتها، فجميع الاعضاء هنا يسعدون بتقديم المعلومة والحلول.

تستاهل من يدعي لك في كل قيام ليل 
ولا ننسى اكيد من فتح لنا هذا المجال لتزيد خبراتنا 
لان اتردد في سؤالي مرة اخرى عن اي شي استصعبه 
بإذن الله ..