IT - TOOLS
ابزارهای کاربردی برای توسعه‌دهندگان
رمزنگاری
تولید توکن تصادفی
تولید هش متن (MD5، SHA و ...)
تولید و بررسی هش Bcrypt
تولید UUID
تولید شناسه ULID
رمزگذاری و رمزگشایی متن
تولید عبارت بازیابی BIP39
تولید امضای HMAC
تولید کلید عمومی و خصوصی RSA
تحلیل قدرت رمز عبور
بررسی امضای دیجیتال PDF
تبدیل‌گر
تبدیل فرمت تاریخ و زمان
تبدیل مبنای عدد
تبدیل عدد رومی
تبدیل متن به Base64
تبدیل فایل به Base64
تبدیل فرمت رنگ
تبدیل حالت نوشتاری متن
تبدیل متن به الفبای ناتو
تبدیل متن به باینری
تبدیل متن به یونیکد
تبدیل YAML به JSON
تبدیل YAML به TOML
تبدیل JSON به YAML
تبدیل JSON به TOML
تبدیل و مرتب‌سازی لیست
تبدیل TOML به JSON
تبدیل TOML به YAML
تبدیل XML به JSON
تبدیل JSON به XML
تبدیل Markdown به HTML
وب
رمزگذاری و رمزگشایی URL
Escape و Unescape کاراکترهای HTML
تجزیه و آنالیز URL
اطلاعات دستگاه و مرورگر
تولید هدر Basic Auth
تولید متا تگ Open Graph
تولید کد OTP
جستجوی MIME Type و پسوند فایل
تجزیه و رمزگشایی JWT
اطلاعات کد کلید (Keycode)
ساخت Slug برای URL
ادیتور بصری HTML
تجزیه User Agent
کدهای وضعیت HTTP
مقایسه دو JSON
رمزگشایی لینک Safelink
تصویر و ویدیو
تولید QR کد
تولید QR کد وای‌فای
تولید تصویر جایگزین SVG
ضبط تصویر با وب‌کم
توسعه
راهنمای دستورات Git
تولید پورت تصادفی
تولید عبارت Crontab
فرمت‌بندی و زیباسازی JSON
فشرده‌سازی JSON
تبدیل JSON به CSV
فرمت‌بندی کوئری SQL
محاسبه‌گر Chmod لینوکس
تبدیل docker run به docker compose
فرمت‌بندی و زیباسازی XML
فرمت‌بندی و زیباسازی YAML
نرمال‌سازی آدرس ایمیل
تست عبارات منظم Regex
راهنمای عبارات منظم Regex
شبکه
محاسبه‌گر Subnet در IPv4
تبدیل آدرس IPv4
تبدیل محدوده IP به CIDR
شناسایی سازنده از مک آدرس
تولید مک آدرس
تولید آدرس ULA در IPv6
ریاضی
ماشین‌حساب پیشرفته
محاسبه زمان پایان کار
محاسبه درصد
اندازه‌گیری
کرنومتر آنلاین
تبدیل واحد دما
مقایسه سرعت و بنچمارک
متن
تولید متن ساختگی Lorem Ipsum
شمارش کلمات و آمار متن
انتخاب و کپی ایموجی
مبهم‌سازی رشته متنی
مقایسه دو متن
تولید مخفف عددی
تولید هنر اَسکی از متن
داده
تجزیه و فرمت شماره تلفن
اعتبارسنجی شبا و IBAN
ابزارهای ایرانی
تبدیل تاریخ شمسی به میلادی
نرمال‌سازی اعداد و متن فارسی
IT-Tools v2024.10.22-7ca5933
(c) 2026 tools-it.ir
فارسی
Deutsch
English
Español
فارسی
Français
Norwegian
Português
Українська
Tiếng Việt
中文

راهنمای عبارات منظم Regex

راهنمای سریع عبارات منظم.

Normal characters

ExpressionDescription
. or [^\n\r]any character excluding a newline or carriage return
[A-Za-z]alphabet
[a-z]lowercase alphabet
[A-Z]uppercase alphabet
\d or [0-9]digit
\D or [^0-9]non-digit
_underscore
\w or [A-Za-z0-9_]alphabet, digit or underscore
\W or [^A-Za-z0-9_]inverse of \w
\Sinverse of \s

Whitespace characters

ExpressionDescription
space
\ttab
\nnewline
\rcarriage return
\sspace, tab, newline or carriage return

Character set

ExpressionDescription
[xyz]either x, y or z
[^xyz]neither x, y nor z
[1-3]either 1, 2 or 3
[^1-3]neither 1, 2 nor 3
  • Think of a character set as an OR operation on the single characters that are enclosed between the square brackets.
  • Use ^ after the opening [ to “negate” the character set.
  • Within a character set, . means a literal period.

Characters that require escaping

Outside a character set

ExpressionDescription
\.period
\^caret
\$dollar sign
|pipe
\\back slash
\/forward slash
\(opening bracket
\)closing bracket
\[opening square bracket
\]closing square bracket
\{opening curly bracket
\}closing curly bracket

Inside a character set

ExpressionDescription
\\back slash
\]closing square bracket
  • A ^ must be escaped only if it occurs immediately after the opening [ of the character set.
  • A - must be escaped only if it occurs between two alphabets or two digits.

Quantifiers

ExpressionDescription
{2}exactly 2
{2,}at least 2
{2,7}at least 2 but no more than 7
*0 or more
+1 or more
?exactly 0 or 1
  • The quantifier goes after the expression to be quantified.

Boundaries

ExpressionDescription
^start of string
$end of string
\bword boundary
  • How word boundary matching works:
    • At the beginning of the string if the first character is \w.
    • Between two adjacent characters within the string, if the first character is \w and the second character is \W.
    • At the end of the string if the last character is \w.

Matching

ExpressionDescription
foo|barmatch either foo or bar
foo(?=bar)match foo if it’s before bar
foo(?!bar)match foo if it’s not before bar
(?<=bar)foomatch foo if it’s after bar
(?<!bar)foomatch foo if it’s not after bar

Grouping and capturing

ExpressionDescription
(foo)capturing group; match and capture foo
(?:foo)non-capturing group; match foo but without capturing foo
(foo)bar\1\1 is a backreference to the 1st capturing group; match foobarfoo
  • Capturing groups are only relevant in the following methods:
    • string.match(regexp)
    • string.matchAll(regexp)
    • string.replace(regexp, callback)
  • \N is a backreference to the Nth capturing group. Capturing groups are numbered starting from 1.

References and tools

  • MDN
  • RegExplained

Regex Cheatsheet — راهنمای عبارات منظم

Regex قدرتمند است، اما سینتکس آن خیلی زود فراموش می‌شود. این چیت‌شیت فارسی مفاهیم اصلی Regular Expression مثل metacharacter، quantifier، character class، anchor، group، flag و matching greedy/lazy را با توضیح کوتاه و مثال جمع کرده است. برای یادگیری، مرور سریع و نوشتن الگو هنگام کدنویسی کاربردی است.

کاربردهای رایج

  • یادآوری سریع سینتکس Regex هنگام کدنویسی
  • یادگیری character class و quantifier
  • مرجع الگوهای رایج مثل ایمیل و شماره
  • درک تفاوت greedy و lazy matching

سوالات متداول

مهم‌ترین metacharacterها کدام‌اند؟

. * + ? ^ $ { } [ ] | ( ) \ — هرکدام در Regex معنای خاصی دارند.

\d و \w چه هستند؟

\d رقم‌ها را match می‌کند و \w کاراکترهای کلمه مثل حرف لاتین، رقم و آندرلاین را. رفتار دقیق می‌تواند به موتور Regex و flagهای Unicode وابسته باشد.

تفاوت greedy و lazy چیست؟

حالت greedy بیشترین تطابق ممکن و حالت lazy کمترین تطابق ممکن را برمی‌گرداند.

anchor در Regex چیست؟

^ ابتدای رشته و $ انتهای رشته را مشخص می‌کند تا تطابق به موقعیت خاص محدود شود.

راهنمای استفاده

هنگام نوشتن pattern، بخش مربوط به quantifier، group یا character class را پیدا کنید و بعد الگو را در Regex Tester همین سایت روی متن واقعی تست کنید.