دستورالعملهای مرجع RegExp JavaScript
- صفحه قبلی JS Promise
- صفحه بعدی JS Set
شی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 | کلمه را به آرایهای از کلمات تقسیم کنید. |
- صفحه قبلی JS Promise
- صفحه بعدی JS Set