جاوا اسڪرپٽ ۽ باقاعده اظهار سان گڏ اي ميل ايڊريس چيڪ ڪريو

ڪجهه وقت اڳ مون هڪ کي رکيو جاوا اسڪرپٽ ۽ باقائده اظهار ذريعي پاسورڊ طاقت چيڪر. ساڳي نوٽ تي ، توهان ساڳيو باقاعده اظهار (ريجڪس) طريقيڪار استعمال ڪندي اي ميل پتي جي theانچي کي به جانچي سگهو ٿا.

جيڪڏھن توھان جي فارم جي عنصر آھي id = ”ايميل ايڊريس“ ۽ توهان فارم شامل ڪيو آن سبيٽس = ”واپسي چيڪ اي ميل () ؛"، هي جاوا اسڪرپٽ فنڪشن آهي جيڪو توهان هڪ الرٽ واپس ڪرڻ لاءِ استعمال ڪري سگهو ٿا جيڪڏهن اي ميل پتي جي صحيح ترتيب وارو هجي يا نه:

function checkEmail() {
var email = document.getElementById('emailaddress');
var filter = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
if (!filter.test(email.value)) {
alert('Please provide a valid email address');
email.focus;
return false;
}
}

فنڪشن اي ميل جي مواد کي فلٽر جي تصديق ڪري ٿو. جيڪڏهن مقابلو ناڪام ٿي ، اهو هڪ خبرداري ظاهر ڪري ٿو ۽ فوڪس کي واپس اي ميل ايڊريس فيلڊ ڏانهن موٽائيندو آهي!

41 تبصرا

  1. 1

    ڪيترن ئي اي ميل پتي سان فارم لاءِ ، اهو سٺو ٿيندو class = ”emailaddress”. جيڪڏهن توهان وٽ پروٽوڪائپ.js لائبريري آهي (http://www.prototypejs.org) پيج تي شامل ڪيل توهان انهي وانگر ڪجهه ڪري سگهو ٿا:

    var صحيح = سچو ؛
    var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    $ ('. اي ميل ايڊريس'). هر (فنڪشن (اي ميل) {
    جيڪڏهن (! filter.test (email.value)) {
    خبردار (؟ مهرباني ڪري صحيح اي ميل پتو فراهم ڪريو؟) ؛
    اي ميل.فوڪ ؛
    صحيح = غلط ؛
    }
    })؛
    واپسي جي صحيح ؛

  2. 5
  3. 7

    آئون ان خيال کي پسند ڪريان ٿو ، پر آئون خاص خاص اي ميل ايڊز ڪرڻ جي همت ڪندي به اها وضاحت ڪندي ته اها قانوني اي ميل ڪهڙيون شيون قبول نه ڪنديون آهن ۽ ڪهڙا غيرقانوني پتا هن جي اجازت ڏين ٿيون.

    باقاعده اظهار جي هڪ مثال لاءِ ، جيڪا وضاحت ڪرڻ سان گڏ مهذب نوڪري به ڪري ٿي ۽ ڪهڙن ڪيسن جو احاطو نٿو ڪري ، هن کي ڏسو:

    http://www.regular-expressions.info/email.html

    منهنجي ذاتي ترجيح آهي اڪثر اڪثر ڪيسن کي toڪي ڏي ۽ ان کي رد ڪرڻ بجاءِ هر ڪنهن جي لاءِ وارننگ جاري ڪرڻ. جيڪڏهن باب واقعي چاهي موڪليندو bob@com.museum جي بجائي bob@museum.com، هن کي ڇو نه ڪرڻ ڏيو؟

    • 8

      هاءِ ريگ ،

      توھان آزمائي سگھوٿا ريجڪس استعمال ڪندي آن لائن ريجڪس ٽيسٽ.

      ان کان سواء ، اتي گهڻو ڪجهه ضرور آهي جيڪو توهان سان گڏ رکڻ جي گهرج ڪري سگھي ٿو اي ميل پتو آر ايف سي جي مطابق صحيح آهي.

      ڪنهن کي غلط اي ميل ايڊريس داخل ڪرڻ جي اجازت نه ڏيڻ جا ڪجهه سبب آهن.
      1. انهن کي توهان کان ناراض ڪيو ويندو جڏهن اي ميل جي انهن جي توقع نه ڪئي وئي ته ڇا توهان جي غلطي آهي يا نه ، توهان جو پتو غلط داخل ڪيو ويو هو.
      2. جيڪڏهن com.museum هڪ صحيح ڊومين هو ۽ ، اچو ته ، ياهو! ان کي هلائڻ ـ ڪوبه اي ميل پتو جيڪو رِليو هجي اهو توهان جي ڪمپني جي اي ميل پهچائڻ لاءِ شهرت تي منفي اثر وجهندو. اھو ٿي سگھي ٿو توھان جي ڪمپني جي سڀ اي ميل بلاڪ ٿيڻ جا سبب.
      3. جيڪڏهن توهان جي اي ميل سروس فراهم ڪندڙ توهان کي داخل ٿيڻ جي اجازت ڏني bob@com.museum، توهان انهي اي ميل پتي تي موڪليل هر اي ميل جي لاءِ پيڪيج پڻ ڏيندا ، جيستائين انهن جي اچارن کي ختم نه ٿيڻ جي ڪري اهو پتو. آئون ڪنهن اي ايس پي کي واضع ڪندين ته انهي وانگر غلط اي ميل پتي جي اجازت ڏين - اهي صرف پنهنجو پئسا وٺي رهيا آهن.

      روڪڻ جي مهرباني!
      Doug

  4. 9
  5. 10

    وڌيڪ آسان طريقو آهي اظهار لکڻ جو.
    var regex = /^[a-z0-9\._-]+@([a-z0-9_-]+\.)+[a-z]{2,6}$/i;
    - آخري ترميم ڪندڙ سان گڏ / مون کي مٿين ڪيسن جي حد ظاهر ڪرڻ جي ڪا ضرورت ناهي.
    - مون کي ڪنهن جي به خبر ناهي TLD نمبرن سان گڏ.
    هڪ طرفي نوٽ تي ، آئون TLD کي 6 ڪردارن سان اجازت ڏيان ٿو. نون ماڻهو باقائدگي سان ايندا آهن ۽ توهان ڪڏهن به نه knowاڻندا هوندا.

  6. 11

    هيلو، تون آهين،

    مان اصل وقت ۾ موجوده شڪل ۾ ان جو استعمال ڪرڻ ۾ مشغول آهيان ، پر اهو توهان کي توهان جي پاسورڊ طاقت چيڪر وانگر ريئل ٽائيم ۾ توثيق نٿو لڳي.

    يا ، ڇا مان صرف اھو سمجھو آھي ، ۽ اھو مون لاءِ ڪم ڪندڙ آھي؟

  7. 12

    btw ، مان واقعي پسند ڪريان ٿي ، جيڪو توهان ھتي وڃي رھيا آھيو ، توھان جا سبق ڏا simpleا سادا آھن ، مان پڪ سان اھو ضرور بک مارڪ ڪندس ....

  8. 13
  9. 16
  10. 17

    صرف هڪ نن correctي اصلاح: باقائده اظهار جي آخر ۾ هڪ اضافي () + اضافي هوندي آهي. اهو پڙهڻ گهرجي:

    ^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+[a-zA-Z0-9]{2,4}$

    پهرين هڪ سان ڪا ڊگهين TLD قبول ڪئي ويندي (جيڪا اندروني طور غلط ناهي جيترو ٻين ان جي نشاندهي ڪئي آهي ، پر جيڪڏهن اهو ارادو هو ته اظهار گهٽجي سگهي ٿو).

  11. 18

    ڇا توهان مهرباني ڪري هن ڪوڊ جي باقاعده اظهار جي وضاحت ڪري سگهو ٿا ۽ اهو ڪيئن ڪم ڪري رهيو آهي؟ .test جي باري ۾ پڻ ـ ڇا جاوا اسڪرپٽ ۾ ڊفالٽ بيان ٽيسٽ ڪريو ته جيئن شيون مٿي ڏنل ڪوڊ ۾ توهان چيڪ ڪيون؟

  12. 19

    هي اي ميل اظهار لاءِ هڪ مختصر ڪوڊ آهي-

    فنڪشن validateEmail (id)
    {
    وي اي ميل پيٽرن = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4،XNUMX}$/
    واپسي اي ميل پيٽر.ٽ (آئي ڊي) ؛

    }
    ديپڪ راءِ
    ويڙهاڪ

  13. 20

    هي اي ميل اظهار لاءِ هڪ مختصر ڪوڊ آهي-

    فنڪشن validateEmail (id)
    {
    وي اي ميل پيٽرن = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4،XNUMX}$/
    واپسي اي ميل پيٽر.ٽ (آئي ڊي) ؛

    }
    ديپڪ راءِ
    ويڙهاڪ

  14. 21
  15. 22
  16. 23

    مهرباني ، پر ھن ريجڪس ۾ ھڪڙي غلطي آھي. مان ريجڪس جو ماهر نه آهيان ، پر مان ايميل کي آزمايو:

    ٽيسٽ @ ٽيسٽ

    ۽ اهو ريجڪس گذري ويو… مون اهو ڏٺو آهي ته اها ”ڀ lackڻ“ کان محروم آهي. تنهنڪري اهو ٿيڻ گهرجي:

    /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/

  17. 24
  18. 27

    يقينن ، اهو صرف هڪ خراب چيڪ آهي پر 100٪ صحيح ناهي ، مثال طور اهو ٺيڪ ٿي ويندو جان_ڊو. @ gmail.com جيڪو اصل ۾ صحيح اي ميل پتو نه آهي (ڊاٽ جي اي ميل جي مقامي حصي ۾ آخري ڪردار جي اجازت ناهي).
    اهو به قبول ڪندو john…doe@gmail.com جيڪو پڻ غلط آهي ڇاڪاڻ ته تسلسل ۾ هڪ کان وڌيڪ نقطا نه هجن.

    هي فقط ڪجھ خاميون آهن مون پهرين نظر ۾ ڏٺو.
    منهنجو ارادو صرف ڌيان ڏيڻ جي لاءِ پريشان ناهي ته جيڪڏهن ڪو هن کي حفاظتي چيڪ طور استعمال ڪرڻ جي منصوبابندي ڪري رهيو آهي- ڪافي محفوظ نه

    صحيح اي ميل پتي جي باري ۾ اڻ لاءِ هن تي چڪاس ڪريو: http://en.wikipedia.org/wiki/E-mail_address

  19. 28

    ديپڪ ،

    اصل ۾ ، مان سمجهان ٿو ته توهان کي ڊٽ (“.”) لاءِ فرار جي درخواست ڪرڻ جي ضرورت آهي. تنهن ڪري ، توهان جو ڪم هئڻ گهرجي ، بدران:

    فنڪشن validateEmail (id)
    {
    وي اي ميل پيٽرن = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4،XNUMX}$/
    واپسي اي ميل پيٽر.ٽ (آئي ڊي) ؛

    }

    ٻي صورت ۾ ، ڊٽ جي معنيٰ ”ڪو ڪردار“. مان سمجهان ٿو ته اهڙن خاص ڪردارن کي فرار ٿيڻ جي ضرورت آهي.

    بڻجو،

    فيڊيڪو

  20. 29

    فنڪشن validateEmail (fld) {
    var غلطي = ””؛
    var tfld = ٽرم (fld.value) ؛ // خالي جاءِ سان فيلڊ جي قيمت ختم ٿي وئي آهي
    وي اي ميل فليٽر = /^[^@]+@[^@.]+.[^@]*ww$/ ؛
    وي غير قانوني چرس = / [() ، ؛: \ "[]] / ؛

    جيڪڏهن (fld.value == "پنهنجو اي ميل پتو داخل ڪريو") {

    error = ”مهرباني ڪري پنهنجو اي ميل پتو داخل ڪريو. n”؛
    } ٻي صورت ۾ جيڪڏهن (! emailFilter.test (tfld)) {// غير قانوني اکرن لاءِ آزمائشي اي ميل

    error = “مهرباني ڪري صحيح اي ميل پتو داخل ڪريو. n”؛
    } ۽ جيڪڏهن (fld.value.match (غير قانوني ڪارس)) {

    error = “مهرباني ڪري صحيح اي ميل پتو داخل ڪريو. n”؛
    }
    واپسي جي غلطي ؛
    }

  21. 30

    فنڪشن validateEmail (fld) {
    var غلطي = ””؛
    var tfld = ٽرم (fld.value) ؛ // خالي جاءِ سان فيلڊ جي قيمت ختم ٿي وئي آهي
    وي اي ميل فليٽر = /^[^@]+@[^@.]+.[^@]*ww$/ ؛
    وي غير قانوني چرس = / [() ، ؛: \ "[]] / ؛

    جيڪڏهن (fld.value == "پنهنجو اي ميل پتو داخل ڪريو") {

    error = ”مهرباني ڪري پنهنجو اي ميل پتو داخل ڪريو. n”؛
    } ٻي صورت ۾ جيڪڏهن (! emailFilter.test (tfld)) {// غير قانوني اکرن لاءِ آزمائشي اي ميل

    error = “مهرباني ڪري صحيح اي ميل پتو داخل ڪريو. n”؛
    } ۽ جيڪڏهن (fld.value.match (غير قانوني ڪارس)) {

    error = “مهرباني ڪري صحيح اي ميل پتو داخل ڪريو. n”؛
    }
    واپسي جي غلطي ؛
    }

  22. 31

    فنڪشن validateEmail (fld) {
    var غلطي = ””؛
    var tfld = ٽرم (fld.value) ؛ // خالي جاءِ سان فيلڊ جي قيمت ختم ٿي وئي آهي
    وي اي ميل فليٽر = /^[^@]+@[^@.]+.[^@]*ww$/ ؛
    وي غير قانوني چرس = / [() ، ؛: \ "[]] / ؛

    جيڪڏهن (fld.value == "پنهنجو اي ميل پتو داخل ڪريو") {

    error = ”مهرباني ڪري پنهنجو اي ميل پتو داخل ڪريو. n”؛
    } ٻي صورت ۾ جيڪڏهن (! emailFilter.test (tfld)) {// غير قانوني اکرن لاءِ آزمائشي اي ميل

    error = “مهرباني ڪري صحيح اي ميل پتو داخل ڪريو. n”؛
    } ۽ جيڪڏهن (fld.value.match (غير قانوني ڪارس)) {

    error = “مهرباني ڪري صحيح اي ميل پتو داخل ڪريو. n”؛
    }
    واپسي جي غلطي ؛
    }

  23. 32

    فنڪشن validateEmail (fld) {
    var غلطي = ””؛
    var tfld = ٽرم (fld.value) ؛ // خالي جاءِ سان فيلڊ جي قيمت ختم ٿي وئي آهي
    وي اي ميل فليٽر = /^[^@]+@[^@.]+.[^@]*ww$/ ؛
    وي غير قانوني چرس = / [() ، ؛: \ "[]] / ؛

    جيڪڏهن (fld.value == "پنهنجو اي ميل پتو داخل ڪريو") {

    error = ”مهرباني ڪري پنهنجو اي ميل پتو داخل ڪريو. n”؛
    } ٻي صورت ۾ جيڪڏهن (! emailFilter.test (tfld)) {// غير قانوني اکرن لاءِ آزمائشي اي ميل

    error = “مهرباني ڪري صحيح اي ميل پتو داخل ڪريو. n”؛
    } ۽ جيڪڏهن (fld.value.match (غير قانوني ڪارس)) {

    error = “مهرباني ڪري صحيح اي ميل پتو داخل ڪريو. n”؛
    }
    واپسي جي غلطي ؛
    }

  24. 33
  25. 34
  26. 35
  27. 36
  28. 37
  29. 38
  30. 39
  31. 40

توهان ڇا ٿا سوچيو؟

هي سائيٽ اسپام کي گهٽائڻ لاء اکزمٽ استعمال ڪري ٿو. سکو ته توهان جي تجويز ڪيل ڊيٽا کي ڪيئن عمل ڪيو وڃي.