در این دوره نوشتن الگوی Regex را از اولین کلاس کاراکتر تا اعتبارسنجی و استخراج داده یاد میگیرید. هر الگو را در مرورگر مینویسید و تطبیقهایش همان لحظه روی متن نشان داده میشود.
(?:\+98|0)9\d{2}[ -]?\d{3}[ -]?\d{4}\b
شمارهٔ پشتیبانی: 09121234567 با سارا تماس بگیرید: 0935 111 2233 شمارهٔ رضا با کد کشور: +989301234567 تلفن دفتر 02188776655 است. این شماره یک رقم کم دارد: 0912123456
این الگو شمارههای موبایل ایران را در یک متن آزاد پیدا میکند، با پیششمارهٔ کشور یا با صفر، با فاصله یا بدون آن. شمارهٔ تلفن ثابت و شمارهٔ ناقص را نمیگیرد. نمونههای دیگر
هر فصل چند نماد تازه را با تمرین روی متن واقعی یاد میدهد.
از تطبیق یک کلمهٔ ساده شروع میکنید و با کلاس کاراکتر، بازهها، نقیض و میانبرهای رقم، حرف و فاصله کار میکنید.
تعداد تکرار را از «یک یا بیشتر» تا «دقیقاً چهار بار» تعیین میکنید و فرق تطبیق حریص و تنبل را میبینید.
با لنگر ابتدا و انتها کل رشته را میسنجید، کلمهٔ کامل را با مرز کلمه پیدا میکنید و فلگ چندخطی را به کار میبرید.
بین چند حالت انتخاب میکنید و بخشی از تطبیق را در گروه ثبت میکنید تا جداگانه به کارتان بیاید. گروه بدون ثبت و ارجاع پسرو را هم یاد میگیرید.
الگویی مینویسید که ایمیل و شمارهٔ موبایل ایران را بپذیرد و ورودی نادرست را رد کند.
با پیشنگری چند شرط را همزمان میسنجید، مثل قانون رمز عبور قوی. در پایان نشانی IP و کد وضعیت را از یک فایل لاگ بیرون میکشید.
این شش الگو را برای همین صفحه نوشتهایم. کنار هر کدام متنی را میبینید که الگو روی آن اجرا شده و بخشهایی که پیدا کرده است.
این الگو شمارههای موبایل ایران را در یک متن آزاد پیدا میکند، با پیششمارهٔ کشور یا با صفر، با فاصله یا بدون آن. شمارهٔ تلفن ثابت و شمارهٔ ناقص را نمیگیرد.
(?:\+98|0)9\d{2}[ -]?\d{3}[ -]?\d{4}\b
شمارهٔ پشتیبانی: 09121234567 با سارا تماس بگیرید: 0935 111 2233 شمارهٔ رضا با کد کشور: +989301234567 تلفن دفتر 02188776655 است. این شماره یک رقم کم دارد: 0912123456
الگو هر نشانی ایمیل را از وسط جملهها بیرون میکشد، حتی با زیردامنه یا علامت + در نام. چیزی که فقط شبیه ایمیل است گرفته نمیشود.
[\w.+-]+@[\w-]+(?:\.[\w-]+)+
درخواست همکاری را به jobs@dinashop.ir بفرستید. پشتیبانی: support@mail.dinashop.co.ir نشانی sara.ahmadi+news@gmail.com هم کار میکند. اینها ایمیل نیستند: ali@ و @dinashop.ir و ali.dinashop.ir
الگو تاریخهای شمسی را پیدا میکند و سال، ماه و روز را هر کدام در یک گروه جدا نگه میدارد. تاریخی با ماه سیزدهم را نمیپذیرد.
\b(1[34]\d{2})/(0[1-9]|1[0-2])/(0[1-9]|[12]\d|3[01])\b
ثبتنام از 1403/07/01 شروع شد و تا 1403/07/30 ادامه دارد. کلاس اول 1403/08/05 برگزار میشود. تاریخ 1403/13/02 درست نیست، چون سال ۱۲ ماه دارد.
الگو فقط عددهایی را میگیرد که بعدشان «تومان» آمده است. خود واژهٔ تومان جزو نتیجه نیست و عددهای دیگر متن نادیده میمانند.
\d{1,3}(?:,\d{3})*(?= تومان)
هدفون بیسیم: 1,850,000 تومان کابل شارژ: 95,000 تومان ارسال برای سفارشهای بالای 500,000 رایگان است. کد تخفیف 2024 تا آخر هفته اعتبار دارد.
از میان خطهای لاگ، فقط درخواستهایی که با خطا تمام شدهاند پیدا میشوند. نشانی IP و کد وضعیت هر کدام در یک گروه جدا ثبت میشود.
^(\d+\.\d+\.\d+\.\d+) .* ([45]\d{2})$
192.168.1.10 - GET /home 200 10.0.0.5 - POST /login 401 172.16.0.1 - GET /cart 200 10.0.0.7 - GET /admin 403 192.168.1.22 - POST /pay 500
هر درس یک نماد یا یک ایده را با مثال توضیح میدهد و یک کار مشخص از شما میخواهد.
الگو را در کادر بالای متن نمونه مینویسید. با هر تغییر، تطبیقها همان لحظه روی متن مشخص میشوند.
در تمرینهای اعتبارسنجی، الگو باید هر ورودی درست را بپذیرد و هر ورودی نادرست را رد کند. اگر گیر کردید، راهنمای همان تمرین قدمبهقدم کمکتان میکند.
الگوی خودتان را روی متن خودتان امتحان کنید. ابزار در مرورگر اجرا میشود و الگو و متن جایی ذخیره نمیشود.
۵ سرفصل، ۲۰ درس، ۱۹ تمرین
همهٔ درسهای این دوره رایگان است. با یک حساب کاربری شروع کنید.
تمام درسهای این دوره بهصورت کامل و همیشگی رایگان است.
بدون نیاز به پرداخت مبلغی
اگر برای بررسی ورودی یا جستوجو در متن الگو را از جای دیگری کپی میکنید و میخواهید خودتان آن را بنویسید.
برای پاکسازی داده، جستوجو در فایلهای لاگ و بیرون کشیدن اطلاعات از متنهای نامرتب.
اگر تازه برنامهنویسی را شروع کردهاید، رجکس مهارتی کوچک است که در هر زبانی به کارتان میآید.
پیشنیاز: یک مرورگر و آشنایی ابتدایی با کار با متن.
اولین الگویتان را همین امروز در مرورگر بنویسید. شروع رایگان است و در کمتر از دو دقیقه وارد محیط یادگیری میشوید.