منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] حذف عنصر خارج المصفوفة - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [VB.NET] حذف عنصر خارج المصفوفة (/showthread.php?tid=32552)



حذف عنصر خارج المصفوفة - محمد اسماعيل - 16-12-19

السلام عليكم ورحمة الله  وبركاتة

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

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

بمعني لو عندي خلية بها متغير مثلا  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



RE: حذف عنصر خارج المصفوفة - smalw - 16-12-19

(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



RE: حذف عنصر خارج المصفوفة - ابراهيم ايبو - 16-12-19

السلام عليكم اخي محمد
اولا اشكر الاخ 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
واليك هذا المثال فيه تلاث حالات (تغيير في مربع نص - تغيير في ليست بوكس- تغيير في داتاتابل)
ارجو ان اكون قد افدتك .... دمت بخير


RE: حذف عنصر خارج المصفوفة - محمد اسماعيل - 16-12-19

(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    بحيث اقدر اتعامل مع النوع دة من المشكلات اكون شاكر لحضرتك.


RE: حذف عنصر خارج المصفوفة - smalw - 16-12-19

دورة Regular Expression يالعربي


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




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


RE: حذف عنصر خارج المصفوفة - محمد اسماعيل - 16-12-19

(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"

وفيت اخي الكريم اشكرك