الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ممكن حد يفهمنى الاتنين فانكشن دول لو سمحت

بدأه أبو حفصة في 26 يوليو 2008 · 12 رد · 1,169 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع
 

public bool IsNumeric(object Expression)

{

bool isNum;

double retNum;

isNum = Double.TryParse(Convert.ToString(Expression), System.Globalization.NumberStyles.Any, System.Globalization.NumberFormatInfo.InvariantInfo, out retNum);

return isNum;

}

public bool IsEmail(string email)

{

return Regex.IsMatch(email, @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$");

}

تم تعديل هذه المشاركة بواسطة Rashadov في 26 يوليو 2008 في 12:59

ولدي إليك وصيتي عهد الأسودْ

العز غايتنا نعيش لكي نسود

و عريننا في الأرض معروف الحدود

فاحم العرين و صنه عن عبث القرود

أظفارنا للمجد قد خُلقت فدى

و نيوبنا سُنَّت بأجساد العدى

و زئيرنا في الأرض مرهوب الصدى

نعلي على جثث الأعادي السؤددا

#2

مع العلم انى عايز اعدل على الــ Method الاولى واعمل واحده زيها بس ISString انا هاستخدمهم فى عمليه الــ Validation

ولدي إليك وصيتي عهد الأسودْ

العز غايتنا نعيش لكي نسود

و عريننا في الأرض معروف الحدود

فاحم العرين و صنه عن عبث القرود

أظفارنا للمجد قد خُلقت فدى

و نيوبنا سُنَّت بأجساد العدى

و زئيرنا في الأرض مرهوب الصدى

نعلي على جثث الأعادي السؤددا

#3

أول وحدة بتحدد اذا كان التعبير المدخل هو رقم أو لأ

الفكرة هي استخدام التابع Double.TryParse الذي يعيد true في حال كان التعبير المرر له (أول parameter) هو رقم ويعيد false غير ذلك

الوسيط الأول للتابع هو التعبير وعادة يكون string مثلا "3.15" والمتحول الأخير يعيد التابع فيه قيمة التعبير على شكل رقم يمكن التعامل معه في العمليات الحسابية (طبعا اذا كان التعبير هو رقم أساسا)

وفي الحقيقة أنت لا تحتاج كل التعقيد في الأعلى ... بإمكانك جعل التابع يأخذ string وتمرره مباشرة للتابع وبدون الوسيطين الثاني والثالث!

ولمزيد من التفاصيل عن عمل التابع انظر في MSDN

http://msdn.microsoft.com/en-us/library/sy...e.tryparse.aspx

التابع الثاني يتحقق من أن النص هو بريد إلكتروني صالح!!! عن طريق الـ Regular Expressions

كما تعلم البريد الالكتروني يجب أن يكون اسم وبعده @ وبعده domain وبعده .com أو .net أو غيرها وحتى الاسم يمكن أن يحوي . مثلا أو - ولكن لا يمكن أن يحوي @ ...

إن مناقشة جميع هذه الحالات أمر صعب ويمكن أن ننسى بعضها لذلك نستخدم فكرة الـ Regular Expressions والتي تعبر عن تمثيل قريب لطريقة تفكير الإنسان ويوجد توابع في NET. جاهزة للتعامل معها

ولتتعرف على معناها تفضل الرابط التالي

http://en.wikipedia.org/wiki/Regular_expressions

وأخيرا ملاحظة لو كنت تستخدم ASP.NET فإنه يوجد component اسمه RegularExpressionValidator يتحقق لك من أي تعبير تريده وفيه تعابير جاهزة مثل تعبير الموقع أو الهاتف أو البريد الإلكتروني

تم تعديل هذه المشاركة بواسطة The Tornado في 26 يوليو 2008 في 13:30

MAAAAAAAAAAAAAAAAAAAAAAAC

#4

الف شكر يا اخ The Tornado

انا استخدم الاتنين دول فى الويندوز

طيب لو انا عايز اعمل فانكشن بتسمح اننا ندخل String فقط هاو ؟؟

معلش هاتعبك معايا

ولدي إليك وصيتي عهد الأسودْ

العز غايتنا نعيش لكي نسود

و عريننا في الأرض معروف الحدود

فاحم العرين و صنه عن عبث القرود

أظفارنا للمجد قد خُلقت فدى

و نيوبنا سُنَّت بأجساد العدى

و زئيرنا في الأرض مرهوب الصدى

نعلي على جثث الأعادي السؤددا

#5

عفوا ولا يهمك

أي نص مدخل يمكن اعتباره string ولكنني أظنك تقصد محارف فقط !!!

بإمكانك استخدام التابع Char.IsLetter !!!

وتعطيه إما متحول من نمط char ويعيد true إذا كان حرفا أبجديا

أو تعطيه string و رقم .. يدل هذا الرقم على موقع الحرف الذي تريد فحصه من هذا الـ string ولمزيد من التفصيل ها هو رابط MSDN المتعلق بالموضوع

http://msdn.microsoft.com/en-us/library/sy...r.isletter.aspx

ويوجد في الصف Char عدة Static Methods يمكنك الاستفادة منها وهي سهلة الاستخدام

وبالتوفيق ;)

MAAAAAAAAAAAAAAAAAAAAAAAC

#6

مش عارف اقولك ايه الف شكر يا تورنادو وربنا يحفظنا من التورنادو :) بامزح معاك

ولدي إليك وصيتي عهد الأسودْ

العز غايتنا نعيش لكي نسود

و عريننا في الأرض معروف الحدود

فاحم العرين و صنه عن عبث القرود

أظفارنا للمجد قد خُلقت فدى

و نيوبنا سُنَّت بأجساد العدى

و زئيرنا في الأرض مرهوب الصدى

نعلي على جثث الأعادي السؤددا

#7

السلام عليكم

الفانكشن الأولى لم افهم ما المقصود منها , اعرف انها لا تسمح إلا بدخول الأرقام فقط و لكن كيف تعمل

ولكم جزيل الشكر

وقل ربي زدني علماًَ

#8
almeezan_82 كتب:
السلام عليكم

الفانكشن الأولى لم افهم ما المقصود منها , اعرف انها لا تسمح إلا بدخول الأرقام فقط و لكن كيف تعمل

ولكم جزيل الشكر

The Tornado كتب:
أول وحدة بتحدد اذا كان التعبير المدخل هو رقم أو لأ

الفكرة هي استخدام التابع Double.TryParse الذي يعيد true في حال كان التعبير المرر له (أول parameter) هو رقم ويعيد false غير ذلك

الوسيط الأول للتابع هو التعبير وعادة يكون string مثلا "3.15" والمتحول الأخير يعيد التابع فيه قيمة التعبير على شكل رقم يمكن التعامل معه في العمليات الحسابية (طبعا اذا كان التعبير هو رقم أساسا)

وفي الحقيقة أنت لا تحتاج كل التعقيد في الأعلى ... بإمكانك جعل التابع يأخذ string وتمرره مباشرة للتابع وبدون الوسيطين الثاني والثالث!

ولمزيد من التفاصيل عن عمل التابع انظر في MSDN

http://msdn.microsoft.com/en-us/library/sy...e.tryparse.aspx

إذا لم يكن الشرح السابق كافياً أو واضحاً يمكنك كتابة التابع على الشكل التالي للاختصار:

 public bool IsNumeric(string someText) {

 bool isNum;

 double retNum;

 // Returns true if (someText) is a valid number
 isNum  = Double.TryParse(someText, out retNum);

 return isNum;

 }

هل أصبح واضحا الآن؟

تم تعديل هذه المشاركة بواسطة The Tornado في 26 يوليو 2008 في 14:07

MAAAAAAAAAAAAAAAAAAAAAAAC

#9

اصبح واضح الحمد لله لكن ايه معنى out retNum

ولدي إليك وصيتي عهد الأسودْ

العز غايتنا نعيش لكي نسود

و عريننا في الأرض معروف الحدود

فاحم العرين و صنه عن عبث القرود

أظفارنا للمجد قد خُلقت فدى

و نيوبنا سُنَّت بأجساد العدى

و زئيرنا في الأرض مرهوب الصدى

نعلي على جثث الأعادي السؤددا

#10

السلام عليكم

جزاك الله كل خير بس هي الـ

TryParse

بتأخد إية بالضبط

وقل ربي زدني علماًَ

#11

في لغة #C يمكن أن تكون المتحولات int أو float او double أو غيرها متحولات دخل وخرج (أي يتم تعديل قيمتها داخل التابع وتنعكس هذه التعديلات على قيمة المتحول خارج التابع) وهي مشابهة لـ var في باسكال و & في ++C ... وهناك طريقتان لذلك وهما ref و out وهما متشابهتان لحد كبير

إلا أن الفرق أن ref يجب إعطاؤه قيمة ابتدائية قبل ارساله للتابع أما out فنعطيه القيمة داخل التابع ولا يجب ذلك خارجها (وإنما يمكن)

وهنا رابط من MSDN يتحدث عنهما باختصار مع مثال لكل منهما

http://msdn.microsoft.com/en-us/vcsharp/aa336814.aspx

في المثال السابق أرسلنا المتحول فوضع فيه التابع القيمة العددية للرقم الذي أرسلناه أيضا للتابع على شكل string في البداية !!

تمام؟ ;)

MAAAAAAAAAAAAAAAAAAAAAAAC

#12

تمام ربنا ما يغلبلك برنامج

:)

ولدي إليك وصيتي عهد الأسودْ

العز غايتنا نعيش لكي نسود

و عريننا في الأرض معروف الحدود

فاحم العرين و صنه عن عبث القرود

أظفارنا للمجد قد خُلقت فدى

و نيوبنا سُنَّت بأجساد العدى

و زئيرنا في الأرض مرهوب الصدى

نعلي على جثث الأعادي السؤددا

#13

تمام

شكراجزيلا

وقل ربي زدني علماًَ

مواضيع مشابهة