{if $Think.config.fa.regexdso.status == '1'} {/if

عبارات منظم متداول

شرح عبارت منظم
آدرس وب (URL) [a-zA-z]+://[^\s]*
آدرس IP ((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)
آدرس ایمیل \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
شماره QQ [1-9]\d{4,}
تگ HTML (شامل محتوا یا خودبسته) <(.*)(.*)>.*<\/\1>|<(.*) \/>
رمز عبور (شامل اعداد/حروف بزرگ/حروف کوچک/نمادها، چهار نوع همه الزامی است، بالای 8 کاراکتر) (?=^.{8,}$)(?=.*\d)(?=.*\W+)(?=.*[A-Z])(?=.*[a-z])(?!.*\n).*$
تاریخ (سال-ماه-روز) (\d{4}|\d{2})-((1[0-2])|(0?[1-9]))-(([12][0-9])|(3[01])|(0?[1-9]))
تاریخ (ماه/روز/سال) ((1[0-2])|(0?[1-9]))/(([12][0-9])|(3[01])|(0?[1-9]))/(\d{4}|\d{2})
زمان (ساعت:دقیقه، فرمت 24 ساعته) ((1|0?)[0-9]|2[0-3]):([0-5][0-9])
حروف چینی (کاراکترها) [\u4e00-\u9fa5]
علامت‌های علامت‌گذاری چینی و تمام‌زاویه‌ای (کاراکترها) [\u3000-\u301e\ufe10-\ufe19\ufe30-\ufe44\ufe50-\ufe6b\uff01-\uffee]
شماره تلفن ثابت در سرزمین اصلی چین (\d{4}-|\d{3}-)?(\d{8}|\d{7})
شماره تلفن همراه در سرزمین اصلی چین 1\d{10}
کد پستی در سرزمین اصلی چین [1-9]\d{5}
شماره شناسایی در سرزمین اصلی چین (15 یا 18 رقم) \d{15}(\d\d[0-9xX])?
عدد صحیح غیر منفی (عدد مثبت یا صفر) \d+
عدد صحیح مثبت [0-9]*[1-9][0-9]*
عدد صحیح منفی -[0-9]*[1-9][0-9]*
عدد صحیح -?\d+
عدد اعشاری (-?\d+)(\.\d+)?
کلمه‌ای که شامل abc نیست \b((?!abc)\w)+\b
شرح عبارت منظم
نام کاربری /^[a-z0-9_-]{3,16}$/
رمز عبور /^[a-z0-9_-]{6,18}$/
مقدار هگزا دسیمال /^#?([a-f0-9]{6}|[a-f0-9]{3})$/
ایمیل /^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/
URL /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/
آدرس IP /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/
تگ HTML /^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>|\s+\/>)$/
دامنه کاراکترهای چینی در کد یونیکد /^[u4e00-u9fa5],{0,}$/
عبارت منظم برای تطبیق کاراکترهای چینی [\u4e00-\u9fa5]
یادداشت: تطبیق کاراکترهای چینی واقعاً کار سختی است، با این عبارت کار راحت‌تر می‌شود
تطبیق کاراکترهای دو بایتی (شامل کاراکترهای چینی) [^\x00-\xff]
یادداشت: می‌توان از آن برای محاسبه طول رشته استفاده کرد (یک کاراکتر دو بایتی 2 و کاراکترهای ASCII 1 طول دارند)
تطبیق عبارت‌های خالی \n\s*\r
یادداشت: می‌تواند برای حذف خطوط خالی استفاده شود
تطبیق تگ‌های HTML <(\S*?)[^>]*>.*?</\1>|<.*?/>
یادداشت: نسخه‌های موجود در اینترنت بسیار نامناسب هستند، این عبارت نیز فقط قادر به تطبیق بخشی است، در مورد تگ‌های تو در تو پیچیده هنوز ناتوان است
تطبیق کاراکترهای خالی در ابتدا و انتهای رشته ^\s*|\s*$
یادداشت: می‌تواند برای حذف کاراکترهای خالی در ابتدا و انتهای خط (شامل فاصله، برجسته‌ساز و ...) استفاده شود، عبارتی بسیار مفید است
تطبیق آدرس ایمیل \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
یادداشت: در اعتبارسنجی فرم بسیار مفید است
تطبیق آدرس وب [a-zA-z]+://[^\s]*
یادداشت: نسخه‌های موجود در اینترنت عملکرد محدود دارند، این عبارت تقریباً می‌تواند نیازها را برآورده کند
تطبیق قانونی بودن حساب (با حرف شروع می‌شود، می‌تواند 5-16 بایتی باشد، حروف الفبا و اعداد و زیرخط مجاز است) ^[a-zA-Z][a-zA-Z0-9_]{4,15}$
یادداشت: در اعتبارسنجی فرم بسیار مفید است
تطبیق شماره تلفن‌های داخلی \d{3}-\d{8}|\d{4}-\d{7}
یادداشت: تطبیق فرمت‌هایی مانند 0511-4405222 یا 021-87888822
تطبیق شماره QQ [1-9][0-9]{4,}
یادداشت: شماره QQ از 10000 شروع می‌شود
تطبیق کد پستی در سرزمین اصلی چین [1-9]\d{5}(?!\d)
یادداشت: کد پستی در سرزمین اصلی چین شامل 6 رقم است
تطبیق شماره شناسایی \d{15}|\d{18}
یادداشت: شماره شناسایی در سرزمین اصلی چین شامل 15 یا 18 رقم است
تطبیق آدرس IP \d+\.\d+\.\d+\.\d+
یادداشت: در استخراج آدرس IP مفید است
تطبیق اعداد خاص:
^[1-9]\d*$ // تطبیق عدد صحیح مثبت
^-[1-9]\d*$ // تطبیق عدد صحیح منفی
^-?[1-9]\d*$ // تطبیق عدد صحیح
^[1-9]\d*|0$ // تطبیق عدد صحیح غیر منفی (عدد مثبت + 0)
^-[1-9]\d*|0$ // تطبیق عدد صحیح غیر مثبت (عدد منفی + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ // تطبیق عدد اعشاری مثبت
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ // تطبیق عدد اعشاری منفی
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$ // تطبیق عدد اعشاری
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$ // تطبیق عدد اعشاری غیر منفی (عدد اعشاری مثبت + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$ // تطبیق عدد اعشاری غیر مثبت (عدد اعشاری منفی + 0)
یادداشت: در پردازش داده‌های بزرگ مفید است، در استفاده خاص احتیاط کنید
تطبیق رشته‌های خاص
^[A-Za-z]+$ // تطبیق رشته‌ای که فقط شامل 26 حرف الفبا باشد
^[A-Z]+$ // تطبیق رشته‌ای که فقط شامل حروف بزرگ باشد
^[a-z]+$ // تطبیق رشته‌ای که فقط شامل حروف کوچک باشد
^[A-Za-z0-9]+$ // تطبیق رشته‌ای که شامل اعداد و 26 حرف الفبا باشد
^\w+$ // تطبیق رشته‌ای که شامل اعداد، 26 حرف الفبا یا زیرخط باشد
کاراکتر شرح
\ کاراکتر بعدی را به عنوان یک کاراکتر خاص، یا یک کاراکتر معنایی، یا یک ارجاع به عقب، یا یک علامت هشت گانه مشخص می‌کند. به عنوان مثال، “n” کاراکتر “n” را تطبیق می‌دهد. “\n” یک خط جدید را تطبیق می‌دهد. ترتیب “\\” علامت “\” و “\(” علامت “(” را تطبیق می‌دهد.
^ موقعیت آغازین رشته ورودی را تطبیق می‌دهد. اگر ویژگی Multiline شی RegExp تنظیم شده باشد، ^ همچنین موقعیت پس از “\n” یا “\r” را تطبیق می‌دهد.
$ موقعیت پایانی رشته ورودی را تطبیق می‌دهد. اگر ویژگی Multiline شی RegExp تنظیم شده باشد، $ همچنین موقعیت قبل از “\n” یا “\r” را تطبیق می‌دهد.
* تطبیق زیرعبارت قبلی صفر یا بیشتر بار. به عنوان مثال، zo* “z” و همچنین “zoo” را تطبیق می‌دهد. * معادل {0,} است.
+ تطبیق زیرعبارت قبلی یک بار یا بیشتر. به عنوان مثال، “zo+” “zo” و همچنین “zoo” را تطبیق می‌دهد، اما “z” را تطبیق نمی‌دهد. + معادل {1,} است.
? تطبیق زیرعبارت قبلی صفر یا یک بار. به عنوان مثال، “do(es)?” می‌تواند “do” یا “does” را از “do” تطبیق دهد. ? معادل {0,1} است.
{n} n یک عدد غیر منفی است. تطبیق n بار معین. به عنوان مثال، “o{2}” نمی‌تواند “o” را از “Bob” تطبیق دهد، اما می‌تواند دو “o” را از “food” تطبیق دهد.
{n,} n یک عدد غیر منفی است. حداقل n بار را تطبیق می‌دهد. به عنوان مثال، “o{2,}” نمی‌تواند “o” را از “Bob” تطبیق دهد، اما می‌تواند تمام oها را از “foooood” تطبیق دهد. “o{1,}” معادل “o+” است. “o{0,}” معادل “o*” است.
{n,m} m و n هر دو عدد غیر منفی هستند و n<=m است. حداقل n بار و حداکثر m بار را تطبیق می‌دهد. به عنوان مثال، “o{1,3}” سه “o” اول را از “fooooood” تطبیق می‌دهد. “o{0,1}” معادل “o?” است. لطفاً توجه داشته باشید که بین ویرگول و دو عدد نباید فاصله‌ای وجود داشته باشد.
? زمانی که این کاراکتر بلافاصله پس از هر یک از سایر محدودکننده‌ها (*, +, ?, {n}, {n,}, {n,m}) قرار گیرد، الگو به صورت غیر حریص تطبیق می‌شود. حالت غیر حریص به گونه‌ای است که حداقل تطبیق ممکن را جستجو کند در حالی که حالت حریص پیش فرض حداکثر تطبیق ممکن را محاسبه می‌کند. به عنوان مثال برای رشته "oooo"، "o+?" یک "o" واحد را تطبیق می‌دهد، در حالی که "o+" تمام "o"ها را تطبیق می‌دهد.
. هر کاراکتر منفردی به جز “\n” را تطبیق می‌دهد. برای تطبیق هر کاراکتری شامل “\n”، باید از الگوهایی مانند “[.\n]” استفاده شود.
(pattern) تطبیق pattern و به دست آوردن این تطبیق. تطبیق بدست آمده می‌تواند از مجموعه Matches تولید شده به دست آید و در VBScript از مجموعه SubMatches و در JScript از خواص $0…$9 استفاده می‌شود. برای تطبیق کاراکترهای پرانتز گرد، باید از “\(” یا “\)” استفاده شود.
(?:pattern) تطبیق pattern اما بدون دریافت نتیجه تطبیق، به عبارت دیگر این یک تطبیق غیر قابل دریافت است که ذخیره‌ای برای استفاده بعدی ندارد. این در استفاده از کاراکتر یا “(|)” برای ترکیب قسمت‌های مختلف یک الگو بسیار مفید است. به عنوان مثال “industr(?:y|ies)” یک عبارت مختصرتر از “industry|industries” است.
(?=pattern) پیش‌بررسی مثبت، تطبیق یافتن در ابتدای هر رشته‌ای که مطابقت با الگو دارد. این یک تطبیق غیر قابل دریافت است، به این معنی که این تطبیق نیازی به دریافت برای استفاده بعدی ندارد. به عنوان مثال، “Windows(?=95|98|NT|2000)” می‌تواند “Windows” را در “Windows2000” مطابقت دهد، اما نمی‌تواند “Windows” را در “Windows3.1” مطابقت دهد. پیش‌بررسی هیچ کاراکتری را مصرف نمی‌کند، به این معنی که پس از وقوع یک تطبیق، جستجوی تطبیق بعدی بلافاصله پس از آخرین تطبیق شروع می‌شود، نه از کاراکترهایی که در پیش‌بررسی ندارند.
(?!pattern) پیش‌بررسی منفی، تطبیق در ابتدای هر رشته‌ای که با الگو مطابقت ندارد. این یک تطبیق غیر قابل دریافت است به این معنی که این تطبیق نیازی به دریافت برای استفاده بعدی ندارد. به عنوان مثال، “Windows(?!95|98|NT|2000)” می‌تواند “Windows” را در “Windows3.1” مطابقت دهد، اما نمی‌تواند “Windows” را در “Windows2000” مطابقت دهد. پیش‌بررسی هیچ کاراکتری را مصرف نمی‌کند، به این معنی که پس از وقوع یک تطبیق، جستجوی تطبیق بعدی بلافاصله پس از آخرین تطبیق شروع می‌شود، نه از کاراکترهایی که در پیش‌بررسی کاسته‌اند.
x|y تطبیق x یا y. به عنوان مثال، “z|food” می‌تواند “z” یا “food” را تطبیق دهد. “(z|f)ood” بنابراین می‌تواند “zood” یا “food” را تطبیق دهد.
[xyz] مجموعه کاراکتر. تطبیق هر یکی از کاراکترهای شامل. به عنوان مثال، “[abc]” می‌تواند “a” را در “plain” تطبیق دهد.
[^xyz] مجموعه کاراکتر منفی. تطبیق هر کاراکتری که شامل نباشد. به عنوان مثال، “[abc]” می‌تواند “p” را در “plain” تطبیق دهد.
[a-z] محدوده کاراکتر. تطبیق هر کاراکتری در محدوده مشخص شده. به عنوان مثال، “[a-z]” می‌تواند هر حرف کوچک بین “a” تا “z” را تطبیق دهد.
[^a-z] محدوده کاراکتر منفی. تطبیق هر کاراکتری که در محدوده مشخص نشده باشد. به عنوان مثال، “[^a-z]” می‌تواند هر کاراکتری که در “a” تا “z” نیست را تطبیق دهد.
\b تطبیق یک مرز واژه، که به معنای محل بین کلمات و فاصله است. به عنوان مثال، “er\b” می‌تواند “er” را در “never” تطبیق دهد، اما نمی‌تواند “er” را در “verb” تطبیق دهد.
\B تطبیق غیروحدت واژه. “er\B” می‌تواند “er” را در “verb” تطبیق دهد، اما نمی‌تواند “er” را در “never” تطبیق دهد.
\cx تطبیق یک کاراکتر کنترلی که با x مشخص شده است. به عنوان مثال، \cM تطبیق یک Control-M یا خط جدید می‌کند. مقدار x باید یکی از A-Z یا a-z باشد. در غیر این صورت، c به عنوان کاراکتر “c” تعبیر می‌شود.
\d تطبیق یک کاراکتر عددی. معادل [0-9].
\D تطبیق یک کاراکتر غیر عددی. معادل [^0-9].
\f تطبیق یک علامت صفحه جدید. معادل \x0c و \cL است.
\n تطبیق یک خط جدید. معادل \x0a و \cJ است.
\r تطبیق یک کاراکتر بازگشتی. معادل \x0d و \cM است.
\s تطبیق هر کاراکتر فضایی، شامل فاصله، صفحات، خطوط جدید و ... معادل [\f\n\r\t\v] است.
\S تطبیق هر کاراکتر غیر فضایی. معادل [^\f\n\r\t\v] است.
\t تطبیق یک کاراکتر تب. معادل \x09 و \cI است.
\v تطبیق یک کاراکتر تب عمودی. معادل \x0b و \cK است.
\w تطبیق هر کاراکتر واژه شامل زیرخط. معادل “[A-Za-z0-9_]” است.
\W تطبیق هر کاراکتر غیر واژه. معادل “[^\a-zA-Z0-9_]” است.
\xn تطبیق n، که n یک مقدار هشتگانه مشخص است. مقدار هشتگانه باید دقیقاً دو رقم داشته باشد. به عنوان مثال، “\x41” تطبیق “A” را می‌دهد. “\x041” معادل “\x04&1” است. در عبارات منظم می‌توان از کد ASCII استفاده کرد.
\num تطبیق num، که num یک عدد صحیح مثبت است. به عنوان مرجع برای تطبیق‌هایی که بدست آمده‌اند. به عنوان مثال، “(.)\1” دو کاراکتر مشابه را تطبیق می‌دهد.
\n شناسایی یک علامت هشتگانه یا ارجاع به عقب. اگر n از قبل حداقل n زیرعبارات بدست آمده باشد، n ارجاع به عقب است. در غیر این صورت، اگر n یک عدد هشتگانه (0-7) باشد، n یک علامت هشتگانه است.
\nm شناسایی یک علامت هشتگانه یا ارجاع به عقب. اگر n از قبل حداقل n زیرعبارات بدست آمده باشد، nm ارجاع به عقب است. اگر n از قبل حداقل n زیرعبارات بدست آمده باشد، n ارجاع به عقب است که یک m بعدی دارد. اگر هیچ یک از شرایط قبلی برآورده نشود، در صورتی که n و m هر دو اعداد هشتگانه (0-7) باشند، \nm علامت هشتگانه nm تطبیق می‌دهد.
\nml اگر n عدد هشتگانه (0-3) باشد و m و l هر دو عدد هشتگانه (0-7) باشند، سپس مقدار هشتگانه nml را تطبیق می‌دهد.
\un تطبیق n، که n یک کاراکتر Unicode است که با چهار عدد هکتایی مشخص می‌شود. به عنوان مثال، \u00A9 علامت حق نشر (©) را تطبیق می‌دهد.

مجموعه عبارات منظم رایج - شامل URL، شماره تلفن همراه، حروف و اعداد، اعتبار سنجی فرم و غیره

به مجموعهلیست عبارات منظم رایج ما خوش آمدید! در اینجا انواع عبارات منظم مفید جمع‌آوری شده است که شامل اعتبارسنجی URL، اعتبارسنجی شماره تلفن همراه، اعتبارسنجی حروف و اعداد، اعتبارسنجی فرم و سایر موارد رایج است. چه شما در حال انجام اعتبارسنجی داده، پردازش رشته یا جستجو و جایگزینی باشید، می‌توانید نمونه‌های متناظر عبارات منظم را در اینجا پیدا کنید.

نمونه‌های رایج عبارات منظم

  • عبارت منظم URL: برای اعتبارسنجی فرمت URL مناسب، مانند: http://www.example.com.
  • عبارت منظم شماره تلفن همراه: اعتبارسنجی فرمت شماره تلفن همراه، پشتیبانی از قوانین شماره کشور مختلف.
  • عبارت منظم حروف عددی: تطبیق ترکیب حروف و اعداد، برای اعتبارسنجی نام کاربری یا رمز عبور.
  • عبارت منظم اعتبارسنجی فرم: برای اعتبارسنجی ورودی فرم، مانند ایمیل، شماره شناسایی، کد پستی و غیره.
  • عبارت منظم پردازش رشته: شامل حذف فضای خالی، جایگزینی کاراکترهای خاص و ... است.
  • جایگزینی با استفاده از عبارات منظم: از طریق عبارات منظم برای جایگزینی رشته‌ها، از الگوهای پیچیده پشتیبانی می‌کند.
  • جستجوی با استفاده از عبارات منظم: برای جستجو در رشته‌ها و پیدا کردن بخش‌های مطابق، از الگوهای مختلف پشتیبانی می‌کند.

نمونه‌های عبارات منظم رایج

در زیر چند نمونه از عبارات منظم رایج و توضیحاتشان وجود دارد که به توسعه‌دهندگان کمک می‌کند تا سریع‌تر شروع کنند:

  • اعتبارسنجی آدرس ایمیل:/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/
  • اعتبارسنجی شماره تلفن همراه:/^(1[3-9])\d{9}$/
  • اعتبارسنجی URL:/^(http:\/\/|https:\/\/)?[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$/
  • اعتبارسنجی تنها اعداد و حروف:/^[A-Za-z0-9]+$/
  • اعتبارسنجی شماره شناسایی:/^\d{15}|\d{18}$/

چگونه از عبارات منظم برای اعتبارسنجی و پردازش استفاده کنیم

عبارات منظم به طور گسترده‌ای در اعتبارسنجی داده و پردازش رشته استفاده می‌شود، به عنوان مثال:

  • اعتبارسنجی فرم: با استفاده از عبارات منظم فرمت داده‌های ورودی کاربر را اعتبارسنجی می‌کند، مانند ایمیل، شماره تلفن و غیره.
  • پاک‌سازی داده: عبارات منظم می‌تواند برای استخراج یا جایگزینی رشته‌های خاص از متن استفاده شود، مانند حذف فضای اضافی، جایگزینی کاراکترهای خاص و غیره.
  • تطبیق اطلاعات: با استفاده از عبارات منظم به سرعت موارد مطابقت را در رشته‌ها پیدا کنید، می‌توانید سریعاً در داده‌های بزرگ جستجو کنید.

آغاز استفاده از عبارات منظم

با استفاده ازمجموعه عبارات منظم رایج ما، می‌توانید به راحتی عبارات منظم مورد نیاز را پیدا کرده و در پروژه خود استفاده کنید. چه این اعتبارسنجی داده باشد، پردازش رشته یا انجام تعاملات پیچیده الگو، مجموعه عبارات منظم ما می‌تواند نیازهای شما را برآورده کند.

امیدواریم این ابزار بتواند به کار شما در توسعه کمک کند. اگر نیاز بیشتری به عبارات منظم دارید، از شما دعوت می‌شود تا به دیگر ابزارها و منابع مرتبط ما نگاهی بیندازید.

رد پای شما:
انتخاب زبان