![]() |
|
[سؤال] مشكلة مع Split - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183) +--- الموضوع : [سؤال] مشكلة مع Split (/showthread.php?tid=1801) |
مشكلة مع Split - alims - 04-02-14 السلام عليكم شبابا عندى سؤال و هو عندما اقوم بستخدم الـ Split يحصل خطاء الاول هو ده الكود المستخدام كود : Dim str As Stringتاتى البيانات عن طريق المتغير returnData و هو متغير نصى المطلوب هنا هو ان اجيب الاسم لوحد و الباص لوحد و لكن عطول بتلقى كلمة اسم و باص موجودها فى السطر بمعنى اخر اوريد الاسم فى متغير نصى لوحدو و الباص فى متغير لوحد مع خذف كلمة اسم و باص ![]() RE: مشكلة مع Split - adel2012 - 04-02-14 السلام عليكم ورحمة الله وبركاته هذا مثال يوضح استخدام الدالة السابقة Dim test_split(), txt As String txt="100 احمد خالد على" 'يتم فصل السلسة النصية حسب الفراغ 'في السلسة النصية السابقة test_split = Split(txt, " ") For i As Int16 = 0 To test_split.LongCount - 1 MsgBox(test_split(i)) Next ================================================== النتيجة ستكون على النحو التالي test_split(0)="100" test_split(1)="احمد" test_split(2)="خالد" test_split(3)="علي" RE: مشكلة مع Split - alims - 12-02-14 شكرا ليك اخى adel2012 ![]() لم اقصدك ذلك و لكن سوف اقوم بالشرح بالتفصيل عندى نص بيجى فى الشكل ده اخى namewecomepass1234 بدون مسافات كل ما ارويد ان اجيب كلمة wecome من بين النص لوحدها من غير كلمة name ولا باقى الناص عايزها لوحدها وبس و ان اجيب 1234 من غير كلمة pass بشرط ان يجى كلمة wecome فى متغير من نوع نص لوحدها و ان تجى 1234 فى متغير من نوع نص غير المتغير التانى خالص
RE: مشكلة مع Split - ناجي إبراهيم - 12-02-14 السلام عليكم... إذا كان النص دائماً بنفس الصيغة (أي كلمة name يليها الاسم ثم كلمة pass يليها الرقم) فاكتب الإجراء التالي في بداية تعريف الـ Class: كود : Private Sub ExtractData(ByRef AText As String, ByRef AName As String, ByRef APass As String)ثم قم باستدعاء الإجراء بالشكل التالي (المثال يفترض أن النص الأصلي موجود في TextBox1 و سيضع الاسم في TextBox2 و الرقم في TextBox3): كود : Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Clickنرجو الاستفادة و السلام. RE: مشكلة مع Split - ربيع - 12-02-14 نحمده ونصلي على رسوله الكريم كود : Dim mainText As String = "namewecomepass1234"الدالة Substring خاصة باقتطاع النص، الوسيطة الأولى لبداية الاقتطاع والوسيطة الثانية لطول الاقتطاع (لو تركناها فارغة أي الوسيطة الثانية يقتص باقي النص من بداية التحديد في الوسيطة الأولى إلى نهاية النص) بامكاننا في المتغير (كلمة المرور) عدم ارسال الوسيطة الثانية وسيتم جلب الكلمة المرادة لكن احببت أن اضع الكود للتوضيح فقط. كود : Dim passText As String = mainText.Substring(mainText.IndexOf("pass") + 4)المعذرة استاذنا ناجي إبراهيم كنت اكتب الرد بينما انت ترسله RE: مشكلة مع Split - alims - 12-02-14
RE: مشكلة مع Split - ناجي إبراهيم - 12-02-14 السلام عليكم... و الشكر الجزيل لك أخي ربيع، ففي الزيادة إفادة، و لولا وجود الأعضاء الذين يتبرعون بوقتهم و جهدهم لطرح المواضيع و تقديم الإجابات لما نهض هذا المنتدى و تقدم. نرجو من الله أن يكون ذلك صدقةً في كتاب حسناتهم عند الله. سلام. RE: مشكلة مع Split - vbnet - 12-02-14 طريقتك في وضع كلمة name وpass ضمن المتغير خاطئة، لأنك ستواجه مشكلة لو احتوى اسم المستخدم أو كلمة المرور إحدى هاتين الكلمتين أو كلتيهما. كود : Dim nameText As String = Split((Split(returnData, "pass")(0)), "name")(1)RE: مشكلة مع Split - الشاكي لله - 13-02-14 (12-02-14, 07:49 AM)vbnet كتب : طريقتك في وضع كلمة name وpass ضمن المتغير خاطئة، كلامك صح .. الطريقة مو عملية ، لذلك من الافضل عمل متغيرين او مصفوفة |