منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : استخراج نص من نص آخر
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم إخواني الكرام ورحمة الله وبركاته
أريد مساعدتكم في كود يعمل علي استخراج نص باللغة العربية من تيكيست بوكس تحتوي علي نص مكون من كلمات باللغة الأنجليزية والعربية.
وأيضا عكس العملية أي استخراج الكلمات باللغة الأنجليزية من التيكيست بوكس التي تحوي النص المختلط بين اللغتين.
ولكم مني جزيل الشكر
لو توضح بمثال
السلام عليكم

ارجو ان يكون طلبك في المرفقات

http://vb4arb.com/vb/uploaded/2_01375700473.rar

يعطيك العافية
[COLOR="#0000CD"]شكرا جزيلا وتم التقييم.
وأرجو شرح الكود بالذات الدوال المستخدمة.[/COLOR]
السلام عليكم ورحمة الله وبركاته

اخي الكريم

الفكرة تعتمد على ان الحروف العربية يكون الاسكي كود لها اكبر من 128 لذلك اععتمدت على ان اجمع هذه الحروف في متغير وعند ظهور اول حرف انجليزي اضع الحروف العربية في ليست وابدا بتجميع الانجليزي وبعد ذلك العربي وهكذا حتى يتم الانتهاء من التكست
والان الى الكود

كود :
Private Sub Command1_Click()
List1.Clear
List2.Clear

المتغير الذي سيحمل الكلمات العربية
arwor$ = ""

المتغير الذي سيحمل الكلمات الانجليزية
enwor$ = ""


هنا لووب حتى نهاية التكست الموجود
For i = 1 To Len(Text1.Text)

هنا نبحث عن قيمة الاسكي لكل حرف موجود في التكست
If Asc(Mid$(Text1.Text, i, 1)) > 128 Then
    arwor$ = arwor$ + Mid$(Text1.Text, i, 1)

هنا يتم تجميع الكلمات الانجليزية
    If enwor$ > "" Then List2.AddItem enwor$: enwor$ = ""
Else

هنا يتم تجميع الكلمات العربية
    enwor$ = enwor$ + Mid$(Text1.Text, i, 1)
    If arwor$ > "" Then List1.AddItem arwor$: arwor$ = ""
End If
Next i


    If arwor$ > "" Then List1.AddItem arwor$
    If enwor$ > "" Then List2.AddItem enwor$
End Sub

والله اعلم

يعطيك العافية
شكرا أخي الكريم وزادك الله من علمه