دستورالعمل‌های مرجع RegExp JavaScript

شیRegExp

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

این مدل برای انجام عملکرد «جستجو و جایگزینی» در متن استفاده می‌شود.

در جاوااسکریپت، شیRegExp یک شیء دارد که دارای ویژگی‌ها و روش‌ها است.

نحوه‌ی نوشتن

/pattern/modifier(s);

مثال

let pattern = /codew3c/i;

سعی کنید خودتان امتحان کنید

توضیح مثال‌ها:

codew3c مدلی که می‌خواهید جستجو کنید
/codew3c/ عبارت‌های نمونه
/codew3c/i عبارت‌های نمونه بدون توجه به حروف بزرگ و کوچک

برای اطلاعات بیشتر در مورد عبارت‌های نمونه، لطفاً آموزش RegExp جاوااسکریپت.

متبوع

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

متبوع توضیح
g اجرا کردن تطابق جهانی (پیدا کردن همه تطابق‌ها به جای توقف پس از اولین تطابق).
i اجرا کردن تطابق بدون توجه به حروف بزرگ و کوچک.
d اجرا کردن تطابق زیرمتن.
m اجرا کردن تطابق چند خطی.

گوشه‌های گرد

گوشه‌های گرد برای پیدا کردن حروف در یک محدوده استفاده می‌شوند:

عبارت توضیح
[abc] هر حرفی که بین گوشه‌های گرد باشد را پیدا کنید.
[^abc] هر حرفی که بین گوشه‌های گرد نباشد را پیدا کنید.
[0-9] جستجو کنید تا هر عددی بین 0 تا 9 را پیدا کنید.
[^0-9] جستجو کردن هر کاراکتری که در میان قفل‌ها نیست (هر غیر عدد).
(x|y) جستجو کردن هر گزینه مشخص.

کاراکترهای ویژه

کاراکترهای ویژه کاراکترهایی هستند که دارای معنای خاصی هستند:

کاراکترهای ویژه توضیح
. جستجو کردن کاراکتر یکتا، به استثنای کاراکترهای بازگشت و پایان خط.
\w جستجو کردن کاراکتر کلمه‌ای.
\W جستجو کردن کاراکتر غیر کلمه‌ای.
\d جستجو کردن عدد.
\D جستجو کردن کاراکتر غیر عددی.
\s جستجو کردن کاراکتر خالی.
\S جستجو کردن کاراکتر غیر خالی.
\b جستجو کردن تطابق در ابتدای/پایان کلمه، ابتدا مانند: \bHI، پایان مانند: HI\b.
\B جستجو کردن تطابق، اما نه در ابتدای/پایان کلمه.
\0 جستجو کردن کاراکتر NULL.
\n جستجو کردن کاراکتر خط.
\f جستجو کردن کاراکتر صفحه.
\r جستجو کردن کاراکتر بازگشت.
\t جستجو کردن کاراکتر جدول.
\v جستجو کردن کاراکتر جدول عمودی.
\xxx جستجو کردن با استفاده از عدد اکثریت xxx تعیین شده برای کاراکتر.
\xdd جستجو کردن با استفاده از عدد هگزادسادس dd تعیین شده برای کاراکتر.
\udddd جستجو کردن با استفاده از عدد هگزادسادس xxxx تعیین شده برای کاراکتر Unicode.

مقیاس‌ها

مقیاس‌ها توضیح
n+ تطابق با هر رشته‌ای که شامل حداقل یک نما n است.
n* تطابق با هر رشته‌ای که شامل صفر یا چند نما n است.
n? تطابق با هر رشته‌ای که شامل صفر یا یک نما n است.
n{X} تطابق با هر رشته‌ای که شامل X نما n است.
n{X,Y} تطابق با هر رشته‌ای که شامل X تا Y نما n است.
n{X,} تطابق با هر رشته‌ای که شامل حداقل X نما n است.
n$ تطابق با هر رشته‌ای که با رشته مشخصی n پایان می‌یابد.
^n تطابق با هر رشته‌ای که با رشته مشخصی n شروع می‌شود.
?=n تطابق با هر رشته‌ای که پس از آن رشته مشخصی n وجود دارد.
?!n تطابق با هر رشته‌ای که پس از آن رشته مشخصی n وجود ندارد.

ویژگی‌های RegExp

ویژگی‌ها توضیح
constructor بازگشت تابعی که پروتوتایپ RegExp را ایجاد می‌کند.
global بررسی اینکه آیا ویرایشگر "g" تنظیم شده است.
ignoreCase بررسی اینکه آیا ویرایشگر "i" تنظیم شده است.
lastIndex تعیین شروع نشانی برای تطابق بعدی.
multiline بررسی اینکه آیا ویرایشگر "m" تنظیم شده است.
source بازگشت متن الگوی RegExp.

روش‌های RegExp

روش توضیح
compile() در نسخه 1.5 از کار افتاده است. تجمعات عبارت‌های منظم.
exec() مطالعه کردن اجزای یک رشته. بازگشت اولین اجزای تطابق.
test() مطالعه کردن اجزای یک رشته. بازگشت true یا false.
toString() 返回正则表达式的字符串值。

patternattributes

pattern attributes

پارامتر

پارامتر pattern یک رشته است، مدل عبارت منظم یا عبارت منظم دیگر را مشخص می‌کند.

پارامتر attributes یک رشته انتخابی است، شامل کاراکترهای "g"، "i" و "m" که به ترتیب برای تطابق کلی، تطابق با توجه به حروف بزرگ و کوچک و تطابق چند خط استفاده می‌شوند. قبل از استانداردسازی ECMAScript، نشانه m پشتیبانی نمی‌شود. اگر pattern اگر یک عبارت منظم است، نه یک رشته، باید این پارامتر را حذف کنید.

ارائه

یک RegExp جدید، با مدل و نشانه‌های مشخص شده. pattern یک عبارت منظم است و نه یک رشته، تابع سازنده RegExp() یک RegExp جدید با مدل و نشانه‌های مشابه با مشخص شده ایجاد می‌کند.

اگر از عملگر new استفاده نکنید، در عوض RegExp() را به عنوان یک تابع فراخوانی کنید، سپس رفتار آن مشابه با استفاده از عملگر new است، فقط زمانی که pattern اگر یک عبارت منظم است، فقط pattern، و دیگر یک RegExp جدید ایجاد نمی‌کند.

پرتاب کنید

SyntaxError - اگر pattern عبارت منظم معتبر نیست، یا attributes حاوی کاراکترهایی غیر از "g"، "i" و "m" است، این استثنا را پرتاب کنید.

TypeError - اگر pattern است یک RegExp، اما با ذخیره‌سازی attributes اگر پارامتر، این استثنا را پرتاب کنید.

پشتیبانی مرورگر

/regexp/ ویژگی ECMAScript1 (ES1) است.

همه مرورگرها به طور کامل ES1 (JavaScript 1997) را پشتیبانی می‌کنند:

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
پشتیبانی پشتیبانی پشتیبانی پشتیبانی پشتیبانی پشتیبانی

روش‌های String در جاوااسکریپت که از عبارت منظم پشتیبانی می‌کنند

روش توضیح
search مقدارهای مطابقت با عبارت منظم را به دست آورید.
match یک یا چند تطابق عبارت منظم را پیدا کنید.
replace با استفاده از عبارت منظم، زیرشاخه‌های مطابقت را جایگزین کنید.
split کلمه را به آرایه‌ای از کلمات تقسیم کنید.