المعاملات ودوال السلاسل الحرفية والتاريخ 2

Download Report

Transcript المعاملات ودوال السلاسل الحرفية والتاريخ 2

‫المعامالت ودوال السالسل‬
‫الحرفية والتاريخ ‪2‬‬
‫التعامل مع السالسل الحرفية‬
‫• أي نص مثل اسم الكائن ‪ name‬وعنوانه الذي تكتبه في مربع هو في النهاية‬
‫سلسلة حرفية‪.‬‬
‫• نحتاج إلى التعديل بالنصوص داخل الكود وهناك دوال مخصصه للتعامل مع‬
‫الدوال الحرفية‪.‬‬
‫تنقسم الدوال التي تتعامل مع السالسل الحرفية إلى عدة فئات ‪:‬‬
‫• حذف أو استقطاع جزء من السلسلة األصلية ويكون بها سلسلة جديدة يشمل الدوال‬
‫‪left , right , Mid , SubString‬‬
‫• استخراج سلسلة حرفية من أخرى بعد حذف المسافات الخالية يشمل الدوال ‪trim‬‬
‫‪, trimend , ..‬‬
‫• تحويل األحرف الكبيرة والصغيرة يشمل الدوال ‪ToUpper , ToLower ,‬‬
‫‪Ucase , Lcase‬‬
‫تنقسم الدوال التي تتعامل مع السالسل الحرفية إلى عدة فئات ‪:‬‬
‫• دوال تبحث بداخل النصوص تشمل ‪IndexOf , InStr‬‬
‫• ‪ Len , length‬وهذه الدوال تقوم بقياس أطوال السالسل الحرفية ‪.‬‬
‫• الدالة ‪ Replace‬المستخدمة في استبدال جزء داخل نص بجزء‪.‬‬
‫تغيير حالة األحرف‬
‫• الدوال ‪ToUpper , Ucase‬‬
‫تحول حالة النص المدخل من حالة األحرف الصغيرة ‪Small Letters‬إلى حالة‬
‫األحرف الكبيرة ‪Capital Letters‬‬
‫‪ToLower , Lcase‬‬
‫• الدوال‬
‫• تحول حالة النص المدخل من حالة األحرف الكبيرة ‪Capital Letters‬إلى حالة‬
‫األحرف الصغيرة ‪small Letters‬‬
‫• الخاصية ‪proper case‬‬
‫• تحويل الحرف األول من كل كلمه الى حرف كبير ‪Capital Letter‬‬
‫‪Str = TextBox1.Text.ToUpper‬‬
‫)‪Str = UCase(TextBox1.Text‬‬
‫)‪Str = StrConv(TextBox1.Text,VbStrConv.ProperCase‬‬
example
‫البحث عن نص داخل آخر‬
‫• الدالة ‪InStr‬‬
‫• تستخدم هذه الدالة معرفة أول مكان يظهر فيه نص ما ضمن نص آخر أكبر منه‪.‬‬
‫• الصيغة العامة‪:‬‬
‫)‪InStr(sourceStr , searchStr‬‬
‫ما قيمة ‪ chpos‬في كل مما يلي‬
‫)”‪Chpos = InStr(“My Name Is Ahmed” , “Is‬‬
‫)”‪Chpos = InStr(“My Name Is Ahmed” , “he‬‬
Chpos = InStr(“My Name Is Ahmed” , “Is”, 4)
Chpos = InStr(“My Name Is Ahmed” , “m”)
Chpos = InStr(“My Name Is Ahmed” , “m” , 7)
Chpos = InStr(“My Name Is Ahmed” , “N”)
Chpos = InStr(“My Name Is
Ahmed”,“N”,CompareMethod.Text)
‫القيمة االفتراضية هي‬
CompareMethod.Binary
‫استخدام الدالة ‪IndexOf‬‬
‫• تقوم هذه الدالة بالبحث داخل النصوص‪.‬‬
‫• الصيغة العامة ‪:‬‬
‫)‪Variable = text1.IndexOf(text2‬‬
‫‪-----------------------------------‬‬
Dim str As String
Dim intf As integer
Str = “ I will see you next Friday”
intf = str.IndexOf(“you”)
TextBox1.Text =
(“ I found you at position “ & intf)
‫معرفة طول النص‬
‫• تستخدم الدالة ‪ Len , length‬لمعرفة طول النص‪.‬‬
‫• الصيغة العامة ‪:‬‬
‫)‪Intlength = Len(StName‬‬
‫‪intValue = txtName.length‬‬
‫التخلص من المسافات الزائدة‬
‫“ ‪“ Computer” , “Computer “ , “ Computer‬‬
‫جميع الجمل السابقة تختلف في األطول‪.‬‬
‫لذلك من األفضل التخلص من المسافات للتأكد من الطول الصحيح للكلمة‪.‬‬
‫يتم ذلك عن طريق الدوال التالية ‪:‬‬
‫• ‪TrimStart‬‬
‫• ‪TrimEnd‬‬
‫• ‪Trim‬‬
Example
Dim st As String
St = “ 12 Salah Eddin st. “
TextBox1.Text = st.Trim()
St.TrimEnd
St.TrimStart
‫اجتثاث جزء من النص‬
Left , right , mid , SubString •
: ‫• الصيغ العامة‬
Outstr = Microsoft.VisualBasic.Left(Inpstr ,
NumChars)
Outstr = Microsoft.VisualBasic.Right(Inpstr ,
NumChars)
Outstr = Mid(Inptstr , startpos [,Numchars])
Outstr = InpStr.SubString( startpos [,Numchars])
Example
Str = Microsoft.VisualBasic.Left(“This is My Name”
, 4)
Str = Microsoft.VisualBasic.Right(“This is My
Name” , 4)
Str = Mid(“This is My Name” , 6 , 2)
Str = “This is My Name”.SubString(2,5)
Str = “This is My Name”.SubString(2)
‫استبدال األحرف داخل النص‬
‫• تستخدم الدالة ‪Replace‬‬
‫• وتقوم باستبدال النص ‪string2‬بالنص ‪string3‬ضمن السلسلة ‪string1‬‬
‫• صيغة االستخدام‬
‫‪strResult=Replace(strSource, strFind, strReplace,‬‬
‫)]‪[intStart], [ intCnt], [intCompare‬‬
‫• ‪ : strSource‬النص المطلوب البحث فيه‬
‫‪ :‬النص المطلوب البحث عنه‬
‫• ‪strFind‬‬
‫• ‪ : strREplace‬النص المطلوب االستبدال به‬
‫‪ :‬ترتيب الحرف المراد بدء البحث منه ( في النص ‪) strSource‬‬
‫• ‪intStart‬‬
‫‪ :‬أقصى عدد لمرات االستبدال المرادة‬
‫• ‪intCnt‬‬
‫• ‪ : intCompare‬قيمة رقمية تحدد هل يتم االلتزام بحجم الحروف ‪ capital‬أو ‪ small‬عند المقارنة ‪ (.‬في الحروف‬
‫الالتينية فقط)‬
‫• مثال‬
‫”‪strDocument = “ this is My first Exam‬‬
‫)”‪Str = Replace(strDocument , “first” , “second‬‬
‫النتيجة‬
‫”‪strDocument = “ this is My second Exam‬‬
‫عكس ترتيب الحروف في سلسلة البيانات‬
‫• نستخدم الدالة )(‪StrReverse‬‬
‫• لعكس ترتيب الحروف في سلسلة حرفية بالكامل‬
‫”‪“retupmoc a si siht” = “this is a computer‬‬
‫صيغة االستخدام ‪:‬‬
‫)‪strResult = strReverse(strsource‬‬
‫• ‪ strSource‬هي السلسلة األصلية‬
‫• ‪ strResult‬هي السلسلة الناتجة بعد العكس‬
‫تطبيق‬