تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
(تم الحل) استخراج الارقام من نص
#1
السلام عليكم
لدى نص يمكن ان يكون باحد الاشكال التالية
(222tt33)
(22re333)
(22yy012)
(22qq001)
المطلوب
كيف احصل على مجموع الارقام الثانية اى بعد الحروف
فى حالة بداية الرقم ب 0 او 00 كيف احصل على الرقم بدون ال 0 او 00
مع مراعاة ان الحروف والارقام جملة واحدة بدون مسافات
}}}
تم الشكر بواسطة:
#2
ان شالله يجي احد يساعدك
الكود التالي يظهر كل الارقام فقط
كود :
Dim p As String = TextBox1.Text
        For Each i In p
            If IsNumeric(i) Then
                ListBox1.Items.Add(i)

            End If
        Next
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء، اللهم أصلح لي ديني الذي هو عصمة أمري، وأصلح لي دنياي التي فيها معاشي، وأصلح لي آخرتي التي فيها معادي، واجعل الحياة زيادة لي في كل خير، واجعل الموت راحة لي من كل شر
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي جدي وهزلي وخطأي وعمدي وكل ذلك عندي، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
}}}
تم الشكر بواسطة:
#3
سأعدل تعديل بسيط على كود الأخ سعود
أتبع الخطوات التالية :-

1- إنشئ فورم جديد وضع فيه Textbox1 + Textbox2 + Button1 .
2- في حدث Button1_Click ضع الكود التالي :


كود :
[SIZE=4][b]TextBox2.Text = [color=#800000]""[/color]
[/b][/SIZE][SIZE=4][b][color=#0000ff]Dim [/color]p [color=#0000ff]As String[/color] = TextBox1.Text[/b][/SIZE]
[SIZE=4][b][color=#0000ff]Dim [/color]G [color=#0000ff]As Boolean[/color] =[color=#0000ff] False[/color][/b][/SIZE]
[SIZE=4][b][color=#0000ff]For Each[/color] i [color=#0000ff]In[/color] p[/b][/SIZE]
[SIZE=4][b][color=#0000ff]If[/color] IsNumeric(i) [color=#0000ff]And[/color] G = [color=#0000ff]True Then[/color][/b][/SIZE]
[SIZE=4][b][color=#0000ff]If[/color] i = [color=#800000]"0"[/color] [color=#0000ff]And[/color] TextBox2.Text = [color=#800000]""[/color] [color=#0000ff]Then[/color][/b][/SIZE]

[color=#0000ff][SIZE=4][b]Else[/b][/SIZE][/color]
[SIZE=4][b]TextBox2.Text &= i[/b][/SIZE]

[color=#0000ff][SIZE=4][b]End If[/b][/SIZE][/color]
[color=#0000ff][SIZE=4][b]Else[/b][/SIZE][/color]
[SIZE=4][b][color=#0000ff]If Not[/color] IsNumeric(i) [color=#0000ff]Then[/color][/b][/SIZE]
[SIZE=4][b]G = [color=#0000ff]True[/color][/b][/SIZE]
[COLOR=#0000ff][SIZE=4][b]End If[/b][/SIZE]
[SIZE=4][b]End If[/b][/SIZE]
[SIZE=4][b]Next[/b][/SIZE][/COLOR]

3- نفذ البرنامج وأكتب النص في Textbox1 واضغط على Button1 وسترى النتيجة في Textbox2 .
Big Grin
<---------------------------------------------------------------->

}}}
تم الشكر بواسطة:
#4
شكرا لك اخى
لكن الكود يعطى كل رقم على حده او بالاحرى يعطينى ماهى الارقلا الموجود داخل النص
وما اريده ان يتم استخلاص الرقم قبل الحروف وبعدها كل على حده
}}}
تم الشكر بواسطة:
#5
الكود الأعلى يتم أستخلاص الأرقام بعد الأحرف وإذا كان يبدأ برقم 0 لا يستخرجه حسب ماطلبت :confused:

barakascap كتب :
كيف احصل على مجموع الارقام الثانية اى بعد الحروف
فى حالة بداية الرقم ب 0 او 00 كيف احصل على الرقم بدون ال 0 او 00
مع مراعاة ان الحروف والارقام جملة واحدة بدون مسافات
Big Grin
<---------------------------------------------------------------->

}}}
تم الشكر بواسطة:
#6
barakascap كتب :وما اريده ان يتم استخلاص الرقم قبل الحروف وبعدها كل على حده

اتبع الخطوات التالية لأستخراج الأرقام ماقبل الاحرف وبعده :-

1- أفتح فورم جديد وضع الأدوات التالية
Textbox1 + Textbox2 + Textbox3 + Button1
2- في حدث Button1_Click ضع الكود التالي :

كود :
[b]TextBox2.Text = [color=#b22222]""[/color][/b]
[SIZE=4][b]TextBox3.Text = [color=#b22222]""[/color][/b][/SIZE]
[SIZE=4][b][color=#0000ff]Dim[/color] p [color=#0000ff]As String[/color] = TextBox1.Text[/b][/SIZE]
[SIZE=4][b][color=#0000ff]Dim [/color]G [color=#0000ff]As Boolean[/color] = [color=#0000ff]False[/color][/b][/SIZE]

[SIZE=4][b][color=#0000ff]For Each[/color] i [color=#0000ff]In[/color] p[/b][/SIZE]
[SIZE=4][b][color=#0000ff]If[/color] IsNumeric(i) [color=#0000ff]And[/color] G = [color=#0000ff]True Then[/color][/b][/SIZE]
[SIZE=4][b][color=#0000ff]If[/color] i = [color=#b22222]"0"[/color] [color=#0000ff]And[/color] TextBox3.Text = [color=#b22222]""[/color] [color=#0000ff]Then[/color][/b][/SIZE]
[color=#0000ff][SIZE=4][b]Else[/b][/SIZE][/color]
[SIZE=4][b]TextBox3.Text &= i[/b][/SIZE]
[color=#0000ff][SIZE=4][b]End If[/b][/SIZE][/color]

[SIZE=4][b][color=#0000ff]ElseIf[/color] IsNumeric(i)[color=#0000ff] And[/color] G =[color=#0000ff] False Then[/color][/b][/SIZE]
[SIZE=4][b][color=#0000ff]If[/color] i =[color=#b22222] "0"[/color] [color=#0000ff]And[/color] TextBox2.Text =[color=#b22222] ""[/color] [color=#0000ff]Then[/color][/b][/SIZE]
[color=#0000ff][SIZE=4][b]Else[/b][/SIZE][/color]
[SIZE=4][b]TextBox2.Text &= i[/b][/SIZE]
[color=#0000ff][SIZE=4][b]End If[/b][/SIZE][/color]

[color=#0000ff][SIZE=4][b]Else[/b][/SIZE][/color]
[SIZE=4][b][color=#0000ff]If Not[/color] IsNumeric(i)[color=#0000ff] Then[/color][/b][/SIZE]
[SIZE=4][b]G = [color=#0000ff]True[/color][/b][/SIZE]
[color=#0000ff][SIZE=4][b]End If[/b][/SIZE][/color]
[color=#0000ff][SIZE=4][b]End If[/b][/SIZE][/color]
[color=#0000ff][b]Next[/b][/color]





3- نفذ البرنامج وأكتب النص في Textbox1 واضغط على Button1 وسترى النتيجة في Textbox2 و Textbox3
حيث ان Textbox2 سيعرض الأرقام قبل الأحرف باستثناء رقم 0 الذي يكون في البداية
و Textbox3 سيعرض الأرقام بعد الأحرف باستثناء رقم 0 الذي يكون في البداية
Big Grin
<---------------------------------------------------------------->

}}}
تم الشكر بواسطة:
#7
شكرا كده تمام
}}}
تم الشكر بواسطة:
#8
جرب هذا الكود قد يفيدك


PHP كود :
Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button1.Click
        Dim a 
As String
        a 
ExtractNumbers(Me.TextBox1.Text)
        
Me.TextBox2.Text = (a)
    
End Sub

    Shared 
Function ExtractNumbers(ByVal expr As String) As String
        
Return String.Join(NothingSystem.Text.RegularExpressions.Regex.Split(expr"[^\d]"))
    
End Function 
}}}
تم الشكر بواسطة: حسن الجلب
#9
تم ايجاد الحل المناسب
}}}
تم الشكر بواسطة:



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


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