( تعداد نمایش : 1638 )

معتبر سازی ادرس Email با استفاده از معادلات قاعده ای

با استفاده از معادلات با قاعده, میتوان آدرسهای Email را معتبر ساخت.
به منظور معتبر سازی آدرس email با استفاده ازمعادلات قاعده ای

re=/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/

1.
re یک متغییر میباشد که مقدار سمت راست به آن اختصاص می یابد. یک RegExp همیشه با یک علامت / شروع و پایان می یابد و هر آنچه که درون این دو علامت باشند, را معادله قاعده ای می نامند. علامت ^ برای آزمایش از ابتدای رشته حرفی بوده زیرا ممکن است کاربر, کلمات و یا علامات نامفهومی را نوشته باشد.
علامت + بدین معنی میباشد که یک یا چند جزء قبلی در حال بررسی میباشند. در این حالت که یک آدرس email همانطور که قبلا نیز ذکر شد, بایستی با یک یا چند ترکیب از کارکترهای a تا z, س A تا Z , س۰ تا ۹ و خط تیره شروع شود.
علامت [] برای استفاده از یک یا چند کارکتر مورد نظر, استفاده میشود. در این مثال, کارکترهای -.\ داخل براکت ( [] ) میباشد. بدین صورت کاربر میتواند نقطه ( . ) یا خط فاصله ( – ) را استفاده نماید. اما بدلیل انکه ” نقطه ” دارای مفهوم خاصی درمعادلات قاعده ای میباشد, قبل از آن از علامت “\” استفاده شده است بدین صورت مفهوم ” نقطه” به تنهایی مدنظر است. در ضمن علامت “-” نیز خودداری مفهوم اصلیش میباشد.
علامت ? بدین مضنون استفاده میشود که میتوان یک یا هیچکدام از کارکترهای قبلی را مورد استفاده قرار داد.
بعد از علامت ( یا پرانتز بسته, انتهای گروه باز شده را مشخص میکند.
سپس علامت * بدین مفهوم است که میتوان از موارد ذکر شده در گروه قبل ( داخل پرانتز) هم استفاده کرد و یا آنها را اصلا بکار نبرد, پس با توجه به مطالب گذشته, از آنجایی که کلمه “dort” یک پیشوند email معتبر هست, عبارت “testing-testing” نیز میتواند یک پیشوند email معتبر به حساب آید.
علامت @ مابین آدرس email و نام domain مربوطه قرار میگیرد.
استفاده مجدد از +W\, بدلیل آنست که نام domain بایستی با یکی از کارکترهای a تا z ,سA تا Z,س۰ تا ۹ ویا خط فاصله شروع گردد.
مجددا عبارت ( + w \ ? [ - . \ ] ) استفاده شده که وجود “.” یا “-” را در قسمت پسوند email مجاز میشمارد.
سپس گروه داخل پرانتز {۲,۳}w\.\ قرار گرفته شده که از وجود یک نقطه به همراه چند کارکتر خبر می دهد. {۲,۳} نیز مقدار ۲ یا ۳ کارتر قبلی می باشد.
سپس منظور از علامت +, وجود تعداد دفعات جزء تعداد دفعات جزء قبلی را میان میکند. مثلا پسوند نهایی میتوان بصورت “Com” , “.edu” , “Ox.ac.uk” باشد.
نهایتا با قرار دادن علامت $ رشته حرفی پایان یافته و از قرار دادن موارد نامناسب دیگر توسط کاربر جلوگیری کند.

if(re.test(myForm.emailAddr.value)) {

2.
با استفاده از دستور test()s اعتبار myForm.emailAddr.value بررسی میشود که در صورت قرار گرفتن نمونه ای نادرست, پیغام اشتباه همراه با اخطار نمایان شده و در غیر آن که یک متغییر معتبر است (آدرس email درست نوشته شده باشد) پیغامی نمیگردد.

<html>
<head>

<SCRIPT language=”Javascript” type=”text/javascript”>
re=/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/

function SubmitIt(myForm) {
if(re.test(myForm.emailAddr.value)) {
return true
}

alert(“Invalid email address”)
myForm.emailAddr.focus()
myForm.emailAddr.select()
return false
}

</SCRIPT>

</head>
<body>
<h2>
<form onSubmit=”return SubmitIt(this)” action=”ok.asp”>
Email:<br>
<input name=”emailAddr” type=”text” size=”30″>
<br>
<input type=”Submit” value=”Submit”>
</form></h2>
</body>
</html>

دیدگاه خود را بیان کنید.

باید وارد سایت شده باشید برای دیدگاه دادن