PDA

View Full Version : RegularExpression برای پسور



A.Yousefi
جمعه 04 آذر 1390, 13:32 عصر
سلام
من یه RE برای پسورد میخوام که چک کنه پسورد انتخاب شده توسط کاربر حداقل 5 کاراکتر باشه،حرف و عدد و کاراکترهای ویژرم قبول کنه.
خودم اینو نوشتم:


\w{5,}

اما این فقط حرف و عدد رو قبول میکنه کاراکتر نمیپذیره.
در ضمن چجوری میشه یه RE ای نوشت که کاربر رو مجبور کنه تو پسوردش حتما از کاراکترهای ویژه هم استفاده کنه و حداقل طولشم 5 باشه؟
با تشکر

vahid.ch013
شنبه 05 آذر 1390, 01:19 صبح
(?=^.{6,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$
پسوردی با حداقل یک کاراکتر بزرگ
پسوردی با حداقل یک کاراکتر کوچک
پسوردی با حداقل یک عدد
طول پسورد 6

Masterhame
پنج شنبه 10 آذر 1390, 17:08 عصر
سلام
از اونجایی که این مطلب، مطلب بسیار مهمی هست لازم دونستم یه سری خورده ریزها بهش اضافه کنم.

فرمول اصلی برای ساختن یک Expression اینه:

(?= some_expression)


حالا یکسری از مدلهای آماده رو براتون اضافه می کنم تا هر کدوم رو که لازم دارید استفاده بکنید. مسلماً این الگوها توی جاهای دیگه هم می تونه کاربرد داشته باشه. مثلاً زمانی که شما میخواید شماره تلفن رو دریافت کنید. یا زمانی که می خواهید اسم و مشخصات فرد رو دریافت کنید:

تشخیص رشته ای که حداقل 8 حرف دارد:
(?=.{8,})

تشخیص رشته ای شامل حروف کوچک انگلیسی:
(?=.*[a-z])

تشخیص رشته ای که حداقل یک عدد دارد:
(?=.*[\d])

تشخیص رشته ای که حداقل یک کاراکتر خاص دارد:
(?=.*[\W])

***کاراکتر خاص شامل این کاراکترهاست: ! @ $ % ^ & * ( ) + ?

تشخیص رشته ای که حداقل یک عدد یا یک کاراکتر خاص دارد:
(?=.*[\d\W])

برای ادامه رشته استفاده می شود (یعنی صفر تا بی نهایت کاراکتر):
.*

برای شروع رشته استفاده می شود:
^

برای انتهای رشته استفاده می شود:
$


حالا روش ترکیب این دستورات رو توضیح میدم.
شما می تونید این رشته ها رو به هر ترتیبی که دوست دارید پشت سر هم استفاده بکنید. بعنوان مثال عبارت زیر:
^.*(?=.{6,})(?=.*[a-z])(?=.*[A-Z]).*$

یعنی حداقل 6 حرف و حداقل یک حرف کوچک و حداقل یک حرف بزرگ

rahimi.mohamad24
پنج شنبه 10 آذر 1390, 19:45 عصر
سلام
میشه توضیح بدید که این علامت سوال و نقطه برای چی هستش؟

Masterhame
شنبه 12 آذر 1390, 08:51 صبح
اگه منظورتون این قسمت هست:
?=.*

این قسمت رو میتونم اینجوری ترجمه کنم که:
اون چه رشته ای هست که شامل هر چیزی میشه که ... ... ... شرط رو دارا باشه