16-12-19, 09:14 PM (آخر تعديل لهذه المشاركة : 16-12-19, 10:25 PM {2} بواسطة 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, "[^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
السلام عليكم اخي محمد
اولا اشكر الاخ 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, 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 بحيث اقدر اتعامل مع النوع دة من المشكلات اكون شاكر لحضرتك.
16-12-19, 10:12 PM (آخر تعديل لهذه المشاركة : 16-12-19, 10:38 PM {2} بواسطة محمد اسماعيل.)
(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
واليك هذا المثال فيه تلاث حالات (تغيير في مربع نص - تغيير في ليست بوكس- تغيير في داتاتابل)
ارجو ان اكون قد افدتك .... دمت بخير