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

عندي داتاتابل اقوم بتحميل البيانات اليها اريد حذف اي حرف  بالصفوف لاول خلية  والحرف لا يوجد بالمصفوفة

اريد تعديل الكود التالي :

بمعني لو عندي خلية بها متغير مثلا  a    = maged   بعد حذف الحروف خارج المصفوفة حيث باقي الحروف غير موجودة بالمصفوفة فتحذف

بمعني اخر الابقاء علي الحروف داخل المصفوفة والباقي يحذف

كود :
 Dim chars As Char() = {"a", "s", "v", "t"}
       For i = 0 To dt.Rows.Count - 1
           DataGrid.Rows.Add(New String() {dt.Rows(i).Item(0).ToString})
       Next
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو
#2
(16-12-19, 02:05 PM)محمد اسماعيل كتب : السلام عليكم ورحمة الله  وبركاتة

عندي داتاتابل اقوم بتحميل البيانات اليها اريد حذف اي حرف  بالصفوف لاول خلية  والحرف لا يوجد بالمصفوفة

اريد تعديل الكود التالي :

بمعني لو عندي خلية بها متغير مثلا  a    = maged   بعد حذف الحروف خارج المصفوفة حيث باقي الحروف غير موجودة بالمصفوفة فتحذف

بمعني اخر الابقاء علي الحروف داخل المصفوفة والباقي يحذف

كود :
 Dim chars As Char() = {"a", "s", "v", "t"}
       For i = 0 To dt.Rows.Count - 1
           DataGrid.Rows.Add(New String() {dt.Rows(i).Item(0).ToString})
       Next

كود :
For i = 0 To dt.Rows.Count - 1
   Dim d = dt.Rows(i).Item(0).ToString
   d = Regex.Replace(d, "[^asvt]", String.Empty, RegexOptions.IgnoreCase)
   DataGrid.Rows.Add(New String() {d})
Next

او
كود :
Dim chars As Char() = {"a", "s", "v", "t"}
For i = 0 To dt.Rows.Count - 1
   Dim d = dt.Rows(i).Item(0).ToString
   d = Regex.Replace(d, "[^" & String.Concat(chars) & "]", String.Empty, RegexOptions.IgnoreCase)
   DataGrid.Rows.Add(New String() {d})
Next
الرد }}}
#3
السلام عليكم اخي محمد
اولا اشكر الاخ smalw  على ماقدمه 
ولتنويع الافكار والاكواد اليك هذا الكود
كود :
Dim dd As Char() = {"a", "s", "v", "t"}
   Dim dt As New DataTable()
   Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
       For i As Integer = 0 To dt.Rows.Count - 1
           ' اخي محمد استبدل الرقم صفر برقم العمود الذي تريد تغيير قيمه
           For Each c As Char In dt.Rows(i).Item(0).ToString().ToCharArray
               If Not dd.Contains(c) Then
                   dt.Rows(i).Item(0) = dt.Rows(i).Item(0).ToString.Replace(c, "")
               End If

           Next
       Next
   End Sub
واليك هذا المثال فيه تلاث حالات (تغيير في مربع نص - تغيير في ليست بوكس- تغيير في داتاتابل)
ارجو ان اكون قد افدتك .... دمت بخير


الملفات المرفقة
.rar   M_Ismail.rar (الحجم : 105.1 ك ب / التحميلات : 10)
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد }}}
تم الشكر بواسطة: محمد اسماعيل , asemshahen5
#4
(16-12-19, 09:14 PM)smalw كتب :
(16-12-19, 02:05 PM)محمد اسماعيل كتب : السلام عليكم ورحمة الله  وبركاتة

عندي داتاتابل اقوم بتحميل البيانات اليها اريد حذف اي حرف  بالصفوف لاول خلية  والحرف لا يوجد بالمصفوفة

اريد تعديل الكود التالي :

بمعني لو عندي خلية بها متغير مثلا  a    = maged   بعد حذف الحروف خارج المصفوفة حيث باقي الحروف غير موجودة بالمصفوفة فتحذف

بمعني اخر الابقاء علي الحروف داخل المصفوفة والباقي يحذف

كود :
 Dim chars As Char() = {"a", "s", "v", "t"}
       For i = 0 To dt.Rows.Count - 1
           DataGrid.Rows.Add(New String() {dt.Rows(i).Item(0).ToString})
       Next

كود :
For i = 0 To dt.Rows.Count - 1
   Dim d = dt.Rows(i).Item(0).ToString
   d = Regex.Replace(d, "[^a,s,v,t]", String.Empty, RegexOptions.IgnoreCase)
   DataGrid.Rows.Add(New String() {d})
Next

او
كود :
Dim chars As Char() = {"a", "s", "v", "t"}
For i = 0 To dt.Rows.Count - 1
   Dim d = dt.Rows(i).Item(0).ToString
   d = Regex.Replace(d, "[^" & String.Join(",", chars) & "]", String.Empty, RegexOptions.IgnoreCase)
   DataGrid.Rows.Add(New String() {d})
Next

بشكر حضرتك اولا علي المتابعة الكود اكثر من رائع .

عندي طلب بسيط  لو في رابط حضرتك للتعابير المنطقيةRegex    بحيث اقدر اتعامل مع النوع دة من المشكلات اكون شاكر لحضرتك.
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5
#5
دورة Regular Expression يالعربي


الكود السابق
^ = لا
كود :
[^asvt]
تعني ليس من هذه الاحرف
فيقوم replace باستبدال [من ليس ضمن هذه الاحرف] ب string.empty وهي مثل ""




كود :
String.Concat(chars)
concat تقوم بتجميع المصفوفه على شكل نص واحد فتصبح "asvt"
الرد }}}
#6
(16-12-19, 09:56 PM)ابراهيم ايبو كتب : السلام عليكم اخي محمد
اولا اشكر الاخ smalw  على ماقدمه 
ولتنويع الافكار والاكواد اليك هذا الكود
كود :
Dim dd As Char() = {"a", "s", "v", "t"}
   Dim dt As New DataTable()
   Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
       For i As Integer = 0 To dt.Rows.Count - 1
           ' اخي محمد استبدل الرقم صفر برقم العمود الذي تريد تغيير قيمه
           For Each c As Char In dt.Rows(i).Item(0).ToString().ToCharArray
               If Not dd.Contains(c) Then
                   dt.Rows(i).Item(0) = dt.Rows(i).Item(0).ToString.Replace(c, "")
               End If

           Next
       Next
   End Sub
واليك هذا المثال فيه تلاث حالات (تغيير في مربع نص - تغيير في ليست بوكس- تغيير في داتاتابل)
ارجو ان اكون قد افدتك .... دمت بخير

ولك كل الخير انشاء الله .

بشكر حضرتك علي التفاعل

(16-12-19, 10:11 PM)smalw كتب : دورة Regular Expression يالعربي


الكود السابق
^ = لا
كود :
[^asvt]
تعني ليس من هذه الاحرف
فيقوم replace باستبدال [من ليس ضمن هذه الاحرف] ب string.empty وهي مثل ""




كود :
String.Concat(chars)
concat تقوم بتجميع المصفوفه على شكل نص واحد فتصبح "asvt"

وفيت اخي الكريم اشكرك
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5 , asemshahen5


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مساعدة في كود عدم تكرار استدعاء نفس السؤال من المصفوفة fireswored1 5 544 10-02-25, 05:11 PM
آخر رد: fireswored1
  مساعدة في عمل جملة الاتصال في ملف خارج البرنامج Emam emam 2 381 25-11-24, 09:24 PM
آخر رد: Emam emam
  إخفاء عنصر Crystal Report waataanys 0 365 13-12-23, 12:37 PM
آخر رد: waataanys
Information [VB.NET] حذف كل العناصر التي تاتي بعد عنصر الذي احدده listbox mervandz 3 633 10-11-23, 07:12 PM
آخر رد: justforit
  [VB.NET] اسم السيرفر خارج المنظومة محمد بوقزاحة 4 1,791 26-04-23, 11:25 PM
آخر رد: Aminsoft
  اختيار عنصر معين من قائمة تتولد فيها ازار عددها متغير atefkhalf2004 16 1,795 22-01-23, 12:56 AM
آخر رد: atefkhalf2004
  [سؤال] اظهار بيانات عنصر محدد من DataGrdView في فورم ثاني HUNTER25 9 1,446 19-12-22, 05:55 PM
آخر رد: HUNTER25
  فكرة تعديل او حذف عنصر / صنف في فاتورة atefkhalf2004 8 1,554 09-11-22, 12:01 AM
آخر رد: atefkhalf2004
  عدم تكرار عنصر في مصفوفة atefkhalf2004 6 1,909 19-08-22, 05:18 PM
آخر رد: atefkhalf2004
  التحقق من المصفوفة Mtaktak 3 1,342 28-04-22, 08:21 AM
آخر رد: Mtaktak

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


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