رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
ترکیبی اعداد و حروف در فیلدها
#1
باسلام
من می خوام برای فیلدهای که کاربر وارد می کنند pattern تعریف کنم که فقط حروف فارسی و اعداد را بتواند وارد کند و اگر حروف انگلیسی یا کاراکترهای خاصی مثل !@#$% را وارد کرد خطا بگیرد
من این کد را نوشتم جواب دادم

[['name'], 'match', 'pattern' => '/[x{0600}-x{06FF}x]{1,32}/u'],
اما این کد وقتی جواب میده که حروف انگلیسی، اعداد یا کاراکترهای خاص را به تنهایی وارد کنم اما اگر همراه با حروف فارسی مثلاً «سلام !@#» بنویسم قبول می کنه و خطا نمی گیره
بنظرتون باید چکار کنم؟
پاسخ
تشکر شده توسط:
#2
[['name'], 'match', 'pattern' => '/^[x{0600}-x{06FF}x]{1,32}$/u'],

قراردادن ^ در ابتدا باعث میشه که پترن با الگوی شما شروع بشه و $ در انتها هم باعث میشه که پترن با الگوی شما تمام بشه. این یعنی بجز الگوی شما چیزی توی متن نباشه.
پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 1 مهمان