رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
ایجاد ریجکس برای ایمیل
#1
به نام خدا 
عرض سلام و خسته نباشید خدمت استاد عزیزم جناب مهندس شهرکی و سایر دوستان عزیز.

نیازمند کمکتان هستم به جهت اینکه دستورات نوشته شده زیر را تفکیک و تحلیل کنم 

preg_match("/b(?:(?:https?|ftp)://|www.)[-a-z0-9+&@#/%?=~_|!:,.;]*[-a-z0-9+&@#/%=~_|]/i",$website)

دراینجا مفهوم عبارت b چی هست ؟ با تشکر
پاسخ
تشکر شده توسط:
#2
اگر اشتباه نکنم باید مفهوم b و B توضیحاتی باشه که در خطوط زیر نوشتم.

جستجور در اولین کاراکتر رشته با b

$str='mos';

echo preg_match("/bm/",$str) ; output 1


جستجو در آخرین کاراکتر رشته با B

$str='osM';

echo preg_match("/BM/",$str) ; output 1
پاسخ
تشکر شده توسط:
#3
فقط الان برام سوال اینجاست . 
اینجا بعد از اولین پرانتز ?:

(?:(?:https?|ftps?)://|www.)

 و باز بعد از دومین پرانتز ?: چه معنی داره ؟ اگر نیاز به بررسی دستور کامل بود تو اولین نوشتم قرارش دادم.
پاسخ
تشکر شده توسط:
#4
هروقت توی پرانتز :? اومد یعنی اون گروه رو بررسی کن ولی بعنوان ارجاع ثبت نکن. یعنی نمیشه بعداً ازش با 1$ و... توی رشته‌ی جایگزینی (مثلاً توی دستور preg_replace و...) استفاده کنیم. فقط داریم یه گروه میسازیم.
پاسخ
تشکر شده توسط: HTayebi




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