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

إلى خبراء الجافا أريد مساعدتكم في عمل برنامج يتحقق من الإيميل المُدخل

مغلق
بدأه alsajeed في 16 يناير 2007 · 4 رد · 1,175 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

أخواني خبراء الجافا لدي سؤال لو سمحتم واللي يعرف الإجابة عليه ياريت يتفضل ويتكرم علي بكتابة الحل هنا للإستفادة لي وللجميع .. وهو :

أريد أن أعمل برنامج صغير بالجافا وظيفته كالتالي :

- أول ماتشغل البرنامج يظهر لك نافذة Applet تخبرك بإدخال الإيميل ( Email ) أي إيميل لكن بشرط أن يكون الدومين Domain هو الهوتميل Hotmail على سبيل المثال

( abc@hotmail.com )

- بعد إدخال الإيميل أريد من البرنامج أن يتحقق من :

* عدم وجود مسافة في الايميل

* وجود علامة @ في الإيميل

* وجود الدومين وهو ( Hotmail )

- إذا كان الإيميل صحيح ( أي صيغته صحيحة ) يظهر له رسالة تخبره بأن الإيميل صحيح

- إذا كان الإيميل خطأ ( أي صيغته خطأ ) سواء في اسم الدومين أو وجود مسافة أو عدم وجود علامة @ ... يظهر له رسالة تخبره بأن الإيميل خطأ

إذا كان الخطأ في وجود ( مسافة ) أريد أن يظهر له رسالة تخبره بأن الخطأ هو " وجود مسافة "

وإذا كان الخطأ في وجود ( دومين غير دومين الهوتميل ) أريد أن يظهر له رسالة تخبره بأن الخطأ هو " وجود دومين غير دومين الهوتميل " أو " الدومين خطأ "

وإذا كان الخطأ هو ( عدم وجود علامة @ ) أريد أن يظهر له رسالة تخبره بأن الخطأ هو " الرجاء التأكد من وجود علامة @ "

ملاحظة هامة :: أنا أريد من البرنامج أن يقوم بالتحقق من كل شي كما ذكرت ..

من الدومين ، والعلامة @ ، ومن عدم وجود مسافة

أرجو أن يكون سؤالي واضح ومفهوم جداً

وأنتظر مساعدتكم لي جزاكم الله ألف خير

تحياتي لكم

#2

أولا: ابحث عن String !!

ثانيا: هناك اشياء يمكنك تفادى و جودها بمعالجتها بمعنى ...

المسافات مكنك ازالتها بالكود و لا يستحسن ان تتوقف العمليه بسبب يمكنك معالجته

ثالثا: يمكنك طلب ال Hotmail ID من المستخدم اى انه يدخل اسم المستخدم فقط و ليس الEmail كله !

رابعا: ابحث عن String فى sun.java.com !

Moore’s Law

– “Number of transistors in chips doubles every 18 
months”.
–  Every 10 years, processors are 100 times more 
powerful.

Gilder’s Law

– “Bandwidth grows at least three times faster than 
computer power”.
– Assuming bandwidth doubles every 12 months; 
every 10 years, it is 1000 times better.
#3

هذه مهمة regular expression

في الحزمة java.util.regex

http://java.sun.com/docs/books/tutorial/es...egex/index.html

فحنوت ألثم جرحه الرعافَ فانتكأت جراحي..

وهمت على خدي الدموع فقلت يا روحي وراحي..

هلّا رحمتَ قلوبنا .. وعدلت عن هذا الرّواحِ ِ ..؟

فأجابني البطل المسجّى هازئاً بيَ .. باقتراحي

كفكف دموعك ليس في عبراتك الحرّى ارتياحي

هذي سبيلي .. إن صدقت محبتي .. فاحمل سلاحي

Sun Certified Java Programmer

#4

السلام عليكم

كما قال الأخ الكريم NUCLEAR استخدم String

الايميل الذي تريده يتكون من شقين

username@hotmail.com

ال username متغير اما الشق الثاني فهو ثابت

يجب معرفة مكان اخر @ لان من بعدها سيكون اسم الdomain وقبلها ال username

باستخدم lastIndexOf و substring

lastIndexOf ترجه مكان اّخر حرف  في النص او -1 اذا كان غير موجود 
lastIndexOf (String Word)or(String Word,int startfrom)or(int charCode)or(int charCode,int startfrom)
Word	   --> النص الذي تريد ان تبحث عنه 
startfrom  --> من اين يبدأ البحث
charCode   --> رقم code الحرف المراد البحث عنه ascii code

بعد مهرفة مكان ال @ تستطيع أخذ اسم المستخدم باستخدام الميثود substring

ترجع جزء معين من النص بدلالة مكان البداية او مكان البداية ومكان النهاية

substring (startfrom),(startfrom,endindex)

في حالة ارسال الstartfrom فقط فال endindex ستكون طول النص

اسم المستخدم يبدأ من 0 وينتهي عند مكان ال @

اما ال domain فيبدأ من مكان ال @+1 الى نهاية النص

ولمعرفة اذا كان اسم المستخدم يحتوي على فراغ استخدم indexOf

فهي تستخدم بنفس طريقة ال lastIndexOf ولكن ترجع اول index تجده

اما أذا أردت استخدام ال regular expression كما أشار الأخ الكريم iyadhoo

فمكن هذا التعبير يفيدك

Pattern.compile("[a-zA-Z0-9][\\w\\W&&[^\\x20@]]{1,}(@hotmail.com)$",2)

أخي الكريم حاول ان تحله بنفسك واذا واجهتك مشكلة الكل راح يساعدك ان شاء الله

اقتباس
ثانيا: هناك اشياء يمكنك تفادى و جودها بمعالجتها بمعنى ...

المسافات مكنك ازالتها بالكود و لا يستحسن ان تتوقف العمليه بسبب يمكنك معالجته

كلام سليم ولكن ليس دائما

هناك أشياء لا تستطيع تغييرها بنفسك يجب ان يكون المستخدم على دراية بذالك

مثلا الايميل لنفرض اني ادخلت Mo7eb Alrasool بالغلط وهي يجب ان تكون Mo7eb_Alrasool

فالبرنامج سيزيل الفراغ وستصبح Mo7ebAlasool فعند الحاجة في المستقبل لأستخدام لأيميل الذي أدخلته أفاجأ ان البرنامج لا يقبله لأني ادخل Mo7eb_Alrasool ولكن البرنامج في البداية لم يعلمني بالخطأ الذي عملته وأصلحة بنفسه وهذه مشكلة - طبعا هناك مشاكل أكبر بكثيير..

والله أعلم

تم تعديل هذه المشاركة بواسطة Mo7eb_Alrasool في 17 يناير 2007 في 08:58

سبحانك اللهم وبحمدك أشهد ان لا اله الا أنت

أستغفرك وأتوب اليك

الهم صلي وسلم وبارك على سيدنا وحبيبنا محمد

#5

أشكركم جميعاً على المرور

وأشكر بالخصوص Mo7eb_Alrasool على هذه التفاصيل

ولكني أنا لم أدرس الجافا

وقد طلب مني هذا الكود لزيادة تحسين درجاتي الدراسية ولكن لا أعلم من أين أحصل عليه

أرجوا منك أخي العزيز كتابة الكود البرمجي وأكون لك من الشاكرين

أخوك / الساجد

هذا الموضوع مغلق.

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…