تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] طريقة التعامل مع السلاسل والنصوص
#1

.rar   Pro1.rar (الحجم : 71.55 ك ب / التحميلات : 9)
السلام عليكم ورحمتة اللة وبركاتة

ارجو المساعد بالتعديل علي الكود

لدي المتغير mytxt وهو عبارة عن جدول بيانات مستخدمين
في الزر الاول قمت بفلترت اسماء المستخدمين فقط ووضعهم بداخل ال ComboBox1
لكن المشكلة هي عندما يزيد عدد بيانات المستخدمين بداخل المتغير mytxt الي 300
البرنامج لايستجيب مع العلم ان العدد المرفق الان في المثال بيانات 93 مستخدم حيث وان
العدد قد يصل الي اكثر من 2000 .

الشي الثاني اريد طباعة بيانات كل مستخدم علي ListView1
الرد }}}}
تم الشكر بواسطة:
#2
ارجو المســــــــــــــــاعدة Angry
الرد }}}}
تم الشكر بواسطة:
#3
وعليكم السلام ورحمة الله وبركاته

عملت لك دالة خاصة لمشروعك وضيفتها تحويل هذه السلسة النصية الخاصة إلى Datatable لكي يسهل التعامل مع بيانتها في البحث بسهول باستخدام Linq
كود :
#Region " StringToDatatable "
   Function StringToDatatable(ByVal s As String) As DataTable
       Dim mDataTable As New DataTable
       mDataTable.Columns.AddRange(New DataColumn() {New DataColumn("id"), New DataColumn("customer"), New DataColumn("name"), New DataColumn("actual-profile")})
       mDataTable.Columns.AddRange(New DataColumn() {New DataColumn("password"), New DataColumn("shared-users"), New DataColumn("wireless-psk")})
       mDataTable.Columns.AddRange(New DataColumn() {New DataColumn("wireless-enc-key"), New DataColumn("wireless-enc-algo"), New DataColumn("last-seen")})
       mDataTable.Columns.AddRange(New DataColumn() {New DataColumn("active"), New DataColumn("incomplete"), New DataColumn("disabled")})
       Dim q =
           From x As String
           In (From x As System.Text.RegularExpressions.Match In System.Text.RegularExpressions.Regex.Matches(s, "(?<=!re).+?(?=!)") Select x.Value)
           Select New user With {
               .id = System.Text.RegularExpressions.Regex.Match(x, "(?<==.id=).*?(?==)").Value,
               .customer = System.Text.RegularExpressions.Regex.Match(x, "(?<==customer=).*?(?==)").Value,
               .name = System.Text.RegularExpressions.Regex.Match(x, "(?<==name=).*?(?==)").Value,
               .actual_profile = System.Text.RegularExpressions.Regex.Match(x, "(?<==actual-profile=).*?(?==)").Value,
               .password = System.Text.RegularExpressions.Regex.Match(x, "(?<==password=).*?(?==)").Value,
               .shared_users = System.Text.RegularExpressions.Regex.Match(x, "(?<==shared-users=).*?(?==)").Value,
               .wireless_psk = System.Text.RegularExpressions.Regex.Match(x, "(?<==wireless-psk=).*?(?==)").Value,
               .wireless_enc_key = System.Text.RegularExpressions.Regex.Match(x, "(?<==wireless-enc-key=)*?(?==)").Value,
               .wireless_enc_algo = System.Text.RegularExpressions.Regex.Match(x, "(?<==wireless-enc-algo=).*?(?==)").Value,
               .last_seen = System.Text.RegularExpressions.Regex.Match(x, "(?<==last-seen=).*?(?==)").Value,
               .active = System.Text.RegularExpressions.Regex.Match(x, "(?<==active=).*?(?==)").Value,
               .incomplete = System.Text.RegularExpressions.Regex.Match(x, "(?<==incomplete=).*?(?==)").Value,
               .disabled = System.Text.RegularExpressions.Regex.Match(x, "(?<==disabled=).*").Value
           }
       For Each u As user In q
           mDataTable.Rows.Add(u.id, u.customer, u.name, u.actual_profile, u.password, u.shared_users, u.wireless_psk, u.wireless_enc_key,
                       u.wireless_enc_algo, u.last_seen, u.active, u.incomplete, u.disabled)
       Next
       Return mDataTable
   End Function
   Structure user
       Dim id As String
       Dim customer As String
       Dim name As String
       Dim actual_profile As String
       Dim password As String
       Dim shared_users As String
       Dim wireless_psk As String
       Dim wireless_enc_key As String
       Dim wireless_enc_algo As String
       Dim last_seen As String
       Dim active As String
       Dim incomplete As String
       Dim disabled As String
   End Structure
#End Region

جربها بفورم جديد في زر وأداة داتاجريدفيو
كود :
   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

       Dim dt As DataTable = StringToDatatable(mytxt)
       Me.DataGridView1.DataSource = dt

   End Sub

والأفضل أن تضع البيانات النصية في ملف نصي وليس في الكود
الرد }}}}
تم الشكر بواسطة: saad mahyoub
#4
(25-09-16, 11:50 PM)ممدوح كتب : وعليكم السلام ورحمة الله وبركاته

عملت لك دالة خاصة لمشروعك وضيفتها تحويل هذه السلسة النصية الخاصة إلى Datatable لكي يسهل التعامل مع بيانتها في البحث بسهول باستخدام Linq
كود :
#Region " StringToDatatable "
   Function StringToDatatable(ByVal s As String) As DataTable
       Dim mDataTable As New DataTable
       mDataTable.Columns.AddRange(New DataColumn() {New DataColumn("id"), New DataColumn("customer"), New DataColumn("name"), New DataColumn("actual-profile")})
       mDataTable.Columns.AddRange(New DataColumn() {New DataColumn("password"), New DataColumn("shared-users"), New DataColumn("wireless-psk")})
       mDataTable.Columns.AddRange(New DataColumn() {New DataColumn("wireless-enc-key"), New DataColumn("wireless-enc-algo"), New DataColumn("last-seen")})
       mDataTable.Columns.AddRange(New DataColumn() {New DataColumn("active"), New DataColumn("incomplete"), New DataColumn("disabled")})
       Dim q =
           From x As String
           In (From x As System.Text.RegularExpressions.Match In System.Text.RegularExpressions.Regex.Matches(s, "(?<=!re).+?(?=!)") Select x.Value)
           Select New user With {
               .id = System.Text.RegularExpressions.Regex.Match(x, "(?<==.id=).*?(?==)").Value,
               .customer = System.Text.RegularExpressions.Regex.Match(x, "(?<==customer=).*?(?==)").Value,
               .name = System.Text.RegularExpressions.Regex.Match(x, "(?<==name=).*?(?==)").Value,
               .actual_profile = System.Text.RegularExpressions.Regex.Match(x, "(?<==actual-profile=).*?(?==)").Value,
               .password = System.Text.RegularExpressions.Regex.Match(x, "(?<==password=).*?(?==)").Value,
               .shared_users = System.Text.RegularExpressions.Regex.Match(x, "(?<==shared-users=).*?(?==)").Value,
               .wireless_psk = System.Text.RegularExpressions.Regex.Match(x, "(?<==wireless-psk=).*?(?==)").Value,
               .wireless_enc_key = System.Text.RegularExpressions.Regex.Match(x, "(?<==wireless-enc-key=)*?(?==)").Value,
               .wireless_enc_algo = System.Text.RegularExpressions.Regex.Match(x, "(?<==wireless-enc-algo=).*?(?==)").Value,
               .last_seen = System.Text.RegularExpressions.Regex.Match(x, "(?<==last-seen=).*?(?==)").Value,
               .active = System.Text.RegularExpressions.Regex.Match(x, "(?<==active=).*?(?==)").Value,
               .incomplete = System.Text.RegularExpressions.Regex.Match(x, "(?<==incomplete=).*?(?==)").Value,
               .disabled = System.Text.RegularExpressions.Regex.Match(x, "(?<==disabled=).*").Value
           }
       For Each u As user In q
           mDataTable.Rows.Add(u.id, u.customer, u.name, u.actual_profile, u.password, u.shared_users, u.wireless_psk, u.wireless_enc_key,
                       u.wireless_enc_algo, u.last_seen, u.active, u.incomplete, u.disabled)
       Next
       Return mDataTable
   End Function
   Structure user
       Dim id As String
       Dim customer As String
       Dim name As String
       Dim actual_profile As String
       Dim password As String
       Dim shared_users As String
       Dim wireless_psk As String
       Dim wireless_enc_key As String
       Dim wireless_enc_algo As String
       Dim last_seen As String
       Dim active As String
       Dim incomplete As String
       Dim disabled As String
   End Structure
#End Region

جربها بفورم جديد في زر وأداة داتاجريدفيو
كود :
   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

       Dim dt As DataTable = StringToDatatable(mytxt)
       Me.DataGridView1.DataSource = dt

   End Sub

والأفضل أن تضع البيانات النصية في ملف نصي وليس في الكود

الف شكرر لك اخي العزيز
الرد }}}}
تم الشكر بواسطة:
#5
(26-09-16, 12:06 AM)HASAN6.0 كتب : كود غريب !!!
على العموم فقط غير الـFunction Rad الى التالي
PHP كود :
Public Function Rad() As List(Of String)
 
       ' الطريقة الاولة 
        Dim out As New List(Of String)

        Dim xx As String : xx = "=name="
        Dim yy As String : yy = "="

        For Each i As Match In Regex.Matches(txt, xx & "(?<value>.*?)" & yy)
            out.Add(i.Groups("value").Value)
        Next

        Return out
    End Function 
طبعاً في اعلى الكلاس اكتب
PHP كود :
Imports System.Text.RegularExpressions 

مشروعك بالمرفقات 

Wink
الف شكر اخي حسين
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  هل من الممكن التعامل مع Dictionary مثل هذا Mohamed20 3 94 13-01-17, 04:38 PM
آخر رد: مساعدة
  هل يوجد طريقة لارسال رسائل واتساب من البرنامج باستخدام vb.net 2010 ? Dr.Sherif Alazizi 15 426 12-01-17, 11:54 PM
آخر رد: Basil Abdallah
  [VB.NET] طريقة عمل زخرفة تلقائية 3asfa~mdmra 1 93 06-01-17, 02:55 PM
آخر رد: Basil Abdallah
  [سؤال] التعامل مع لوحة تسجيل دخول بالفلاش Test 4 105 02-01-17, 10:34 AM
آخر رد: Test
  [سؤال] مواقع التوصل والفيجول هل من طريقة للتحكم فى الفيسبوك elhon.tec 2 297 29-12-16, 11:38 PM
آخر رد: Basil Abdallah
  مساعدة لو سمحتو (طريقة تحريك صورة من خلال احداثيات موجودة في ملف نصي بدون ازرار) marten363 3 88 27-12-16, 08:20 PM
آخر رد: مساعدة
  [سؤال] كيف اخلي البرنامج يشتغل بدون نت فروم ورك و طريقة اختيار النت فروم ورك hassan 9 4,302 27-12-16, 01:25 PM
آخر رد: Basil Abdallah
  مساعد من فضلكم في طريقة ملء كومبوتكست ادت و القريد فيو في الديف اكسبرس hocine_btsm 0 73 25-12-16, 12:19 AM
آخر رد: hocine_btsm
Rainbow طريقة عمل حضور وانصراف يتجدد يوميًا+طباعة سجلات الحضور والانصراف فاطمة غ 5 291 14-12-16, 02:47 PM
آخر رد: tryold
  طريقة عمل قائمة خصائص شبية باالموجودةفي برنامج الفيجوال بيسك CLARO 1 133 07-12-16, 12:20 AM
آخر رد: amgad525

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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم