├── README.md └── examples ├── date.md ├── email.md ├── phone number.md ├── time.md └── url.md /README.md: -------------------------------------------------------------------------------- 1 | # آموزش ویدیویی در یوتیوب 2 | https://www.youtube.com/watch?v=MoRnv4qMzhI 3 | 4 | # ریجکس چیه 5 | یه سری کاراکتر پشت سرهم که الگوی یک جستجو در رشته رو میسازن 6 | 7 | # کاراکتر های مختلف در ریجکس 8 | | کاراکتر | معنی | 9 | | --- | --- | 10 | | . | هر کاراکتری بجز اینتر (رفتن به خط بعد) | 11 | | \d | یک رقم (0 تا 9) | 12 | | \D | یک کاراکتر غیر از ارقام 0 تا 9 | 13 | | \s | هر فاصله ای بین دو کاراکتر | 14 | | \S | هرچیزی بجز فاصله | 15 | | + | گروه یا کاراکتر قبلی به تعداد حداقل 1 بار | 16 | | * | گروه یا کاراکت قبلی به هر تعداد | 17 | | (…) | گروه بندی | 18 | | ? | گروه یا کاراکتر قبلی به تعداد 0 یا 1 بار | 19 | | {n,m} | گروه یا کاراکتر قبلی به تعداد باری بین دو عدد داده شده | 20 | | {n} | گروه یا کاراکتر قبلی به تعداد های مشخص 21 | | \t | تب (فاصله بلند) | 22 | | [a-z] | هر کاراکتری بین دو کاراکتر داده شده | 23 | | [aA] | یکی از کاراکتر های داده شده | 24 | | \n | خط جدید | 25 | | \| | یا | 26 | | $ | پایان یک خط یا کل رشته | 27 | | ^ | شروع یک خط یا کل رشته | 28 | | \w | یک حرف کلمه ای (حرف یا عدد یا آندرلاین) | 29 | | \W | یک حرف غیر کلمه ای (حرف یا عدد یا آندرلاین) | 30 | | \b | با بین یک حرف کلمه ای و یک حرف غیر کلمه ای مچ میشود | 31 | 32 | # لیست مثال ها 33 | [زمان](https://github.com/Cozy-Tech/regex_tutorial_and_examples/blob/main/examples/time.txt) | [ایمیل](https://github.com/Cozy-Tech/regex_tutorial_and_examples/blob/main/examples/email.md) | [آدرس سایت](https://github.com/Cozy-Tech/regex_tutorial_and_examples/blob/main/examples/url.md) | [تاریخ شمسی](https://github.com/Cozy-Tech/regex_tutorial_and_examples/blob/main/examples/date.md) 34 | -------------------------------------------------------------------------------- /examples/date.md: -------------------------------------------------------------------------------- 1 | # نسخه دیباگ شده آموزش یوتیوب 2 | ``` 3 | [0-9]{1,4}\/(1[0-2]|0?[1-9])\/(3[0-1]|[1-2][0-9]|0?[1-9]) 4 | ``` 5 | -------------------------------------------------------------------------------- /examples/email.md: -------------------------------------------------------------------------------- 1 | # حرفه ای 2 | ``` 3 | (?:[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+\/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:(2(5[0-5]|[0-4][0-9])|1[0-9][0-9]|[1-9]?[0-9]))\.){3}(?:(2(5[0-5]|[0-4][0-9])|1[0-9][0-9]|[1-9]?[0-9])|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\]) 4 | ``` 5 | #متوسط 6 | ``` 7 | \b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b 8 | ``` 9 | 10 | # ساده 11 | `\S+@\S+.\S+` 12 | -------------------------------------------------------------------------------- /examples/phone number.md: -------------------------------------------------------------------------------- 1 | #ریجکس 2 | پیدا کردن شماره تلفن: 3 | ``` 4 | \b(\d{3}[-.]?\d{3}[-.]?\d{4})\b 5 | ``` 6 | -------------------------------------------------------------------------------- /examples/time.md: -------------------------------------------------------------------------------- 1 | # زمان به صورت های زیر 2 | 3 | SS
4 | MM:SS
5 | HH:MM:SS
6 | همچنین 0 پشت عداد تک رقمی در زمان نیز مهم نیست 7 | 8 | ## ریجکس 9 | `` 10 | (?:(?:([01]?\d|2[0-3]):)?([0-5]?\d):)?([0-5]?\d) 11 | `` 12 | -------------------------------------------------------------------------------- /examples/url.md: -------------------------------------------------------------------------------- 1 | # قابلیت مچ شدن با آدرس های زیر 2 | www.google.com
3 | http://www.google.com
4 | https://google.com
5 | ... 6 | 7 | ``` 8 | (https?:\/\/)?((www:)?\/\/)?(([\d\w]|%[a-fA-F\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)? 9 | ``` 10 | --------------------------------------------------------------------------------