السلام عليكم ورحمة الله وبركاته
هنتكلم اليوم عن طريقة التحقق من البريد عن طريق دالة Regex ( Regular Expression )
فى البداية الدالة بتاخد نصيين
النص الأول وهو البريد والنص الثانى وهو ما يسمى Pattren وهو شرط التحقق
مثال,,
عندنا بريد اسمه [email protected]
اذا نظرنا اليه نجد ان اى بريد الكترونى يتكون من 3 اشياء
1- ثوابت مثل ( @ .com ) لكن فى بعض الايميلات بدومين مختلفة لكن انا هتكلم على المشهورين
2- متغير وهو اسم البريد
3- متغير قليلاً مثل ( yahoo , gmail , hotmail )
تمام قسمنا البريد
الان نفتح الفيجوال وننشأ مشروع C# جديد
ونستدعى
using System.Text.RegularExpressions;
الان نكتب الأتى
تمام الأن قمنا موضع البريد فى متغير باسم Input
الان نأتى للجزء المهم وهو كتابة Pattren
نأتى بالجزء الخاص بالاسم بالطبع كل بريد سختلف عن اسم الاخر
لجعل الدالة تاخد اى اسم مكتوب نكتب فى أول Pattren
( ^ ) وفائدتها انها تنبه ان النص يبدأ بالاحرف التى تليه
[A-za-z0-9] هذه تدل على ان النص المدخل يمكن ان يحتوى أوله على أحرف من A-Z وهى حروف كبيرة
أو يبدأ أو يحتوى على حروف صغيرة a-z
أو يحتوى على أرقام 0-9
كل هذا فى الحرف الاول لكن البريد لا يمكن ان يكون من حرف واحد او رقم
لذلك يتم وضع علامة ( + ) بعدها ليصبح الشكل
هنتكلم اليوم عن طريقة التحقق من البريد عن طريق دالة Regex ( Regular Expression )
فى البداية الدالة بتاخد نصيين
النص الأول وهو البريد والنص الثانى وهو ما يسمى Pattren وهو شرط التحقق
مثال,,
عندنا بريد اسمه [email protected]
اذا نظرنا اليه نجد ان اى بريد الكترونى يتكون من 3 اشياء
1- ثوابت مثل ( @ .com ) لكن فى بعض الايميلات بدومين مختلفة لكن انا هتكلم على المشهورين
2- متغير وهو اسم البريد
3- متغير قليلاً مثل ( yahoo , gmail , hotmail )
تمام قسمنا البريد
الان نفتح الفيجوال وننشأ مشروع C# جديد
ونستدعى
using System.Text.RegularExpressions;
الان نكتب الأتى
تمام الأن قمنا موضع البريد فى متغير باسم Input
الان نأتى للجزء المهم وهو كتابة Pattren
نأتى بالجزء الخاص بالاسم بالطبع كل بريد سختلف عن اسم الاخر
لجعل الدالة تاخد اى اسم مكتوب نكتب فى أول Pattren
( ^ ) وفائدتها انها تنبه ان النص يبدأ بالاحرف التى تليه
[A-za-z0-9] هذه تدل على ان النص المدخل يمكن ان يحتوى أوله على أحرف من A-Z وهى حروف كبيرة
أو يبدأ أو يحتوى على حروف صغيرة a-z
أو يحتوى على أرقام 0-9
كل هذا فى الحرف الاول لكن البريد لا يمكن ان يكون من حرف واحد او رقم
لذلك يتم وضع علامة ( + ) بعدها ليصبح الشكل
تمام
بعدها نضع العلامة الثابتة ( @ ) كما هى
نأتى الان للموقع التابع له البريد نكتبه بين قوسين
وتسمى مجموعة و نجعل بين كل اسم علامة ( | ) وتفيد انها تعنى OR اى بمعنى تحقق وجود اى بريد منهم
فيصبح الشكل
بعدها نضع العلامة الثابتة ( @ ) كما هى
نأتى الان للموقع التابع له البريد نكتبه بين قوسين
وتسمى مجموعة و نجعل بين كل اسم علامة ( | ) وتفيد انها تعنى OR اى بمعنى تحقق وجود اى بريد منهم
فيصبح الشكل
الأن نأتى للثابت ( .Com ) يتم كتابتة بعد المجموعة لكن يجب وضع علامة ( \ ) قبل ( . )
لأن علامة ( . ) تعنى أى حرف او رقم او رمز لكن بعد وضع ( \ ) تعنى انها النقطة فقط وليس اى حرف او اى رمز او رقم
بعدها يتم وضع علامة ( $ ) وتعنى ان ما قبلها ينتهى النص المدخل به
بمعنى ان ينتهى النص الخاص بالبريد على ( .com )
ليصبح الشكل النهائى
لأن علامة ( . ) تعنى أى حرف او رقم او رمز لكن بعد وضع ( \ ) تعنى انها النقطة فقط وليس اى حرف او اى رمز او رقم
بعدها يتم وضع علامة ( $ ) وتعنى ان ما قبلها ينتهى النص المدخل به
بمعنى ان ينتهى النص الخاص بالبريد على ( .com )
ليصبح الشكل النهائى
أتمنى الشرح يكون مفهوم والسلام عليكم ورحمة الله وبركاته
C#:
string input = "[email protected]";
string ou = Regex.IsMatch(input,@"^[A-Za-z0-9][email protected](yahoo|hotmail|gmail)\.com$").ToString();
MessageBox.Show(ou);