عبارات با قاعده در جاوااسکریپت

از ویکی کد
(تفاوت) → نسخهٔ قدیمی‌تر | نمایش نسخهٔ فعلی (تفاوت) | نسخهٔ جدیدتر ← (تفاوت)
پرش به ناوبری پرش به جستجو

https://www.w3schools.com/js/js_regexp.asp

JavaScript Regular Expressions

عبارات با قاعده در جاوا اسکریپت

A regular expression is a sequence of characters that forms a search pattern.

یک عبارت با قاعده دنباله از کاراکتر هاست که یک الگوی جستجو را فراهم می کند .

The search pattern can be used for text search and text replace operations.

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

What Is a Regular Expression?

عبارت با قاعده چیست ؟

A regular expression is a sequence of characters that forms a search pattern.

یک عبارت با قاعده دنباله از کاراکتر هاست که یک الگوی جستجو را فراهم می کند .

When you search for data in a text, you can use this search pattern to describe what you are searching for.

زمانی که شما در یک متن به دنبال داده یا Data هستید ، شما می توانید از این الگوهای جستجو برای تعریف چیزی که به دنبال آن هستید استفاده کنید.

A regular expression can be a single character, or a more complicated pattern.

یک عبارت منطقی می تواند به صورت تک کاراکتری باشد و یا ساختار پیچیده تری داشته باشد .

Regular expressions can be used to perform all types of text search and text replace operations.

از عبارتهای با قاعده میتوان برای پیاده سازی تمامی جستجوهای متنی و عملیات های جا به جایی های متنی استفاده کرد .

Syntax

شیوه نوشتار

/pattern/modifiers;

Example

var patt = /w3schools/i;

Example explained:

توضیح مثال :

/w3schools/i  is a regular expression.

/w3schools/i یک عبارت با قاعده است .

w3schools  is a pattern (to be used in a search).

w3schools  یک الگو است .(که برای جستجو استفاده می شود)

i  is a modifier (modifies the search to be case-insensitive).

I  یک modifier است ( که مشخص می کند جستجو می بایست حساس به حروف کوچک و بزرگ نباشد )

Using String Methods

استفاده به همراه متد های رشته های متنی یا String

In JavaScript, regular expressions are often used with the two string methods: search() and replace().

در جاوا اسکریپت ، عبارت های با قاعده معمولا همراه با دو متد رشته های متنی استفاده می شوند : متد search() و replace()

The search() method uses an expression to search for a match, and returns the position of the match.

متد Search() از عبارت با قاعده برای پیدا کردن نتیجه یک جستجو استفاده می کند ، و موقعیت یا اندیس نتیجه را برمیگرداند .

The replace() method returns a modified string where the pattern is replaced.

متد replace() یک رشته متنی ویرایش شده را برمی گرداند که الگو در آن جایگزین شده است .

Using String search() With a String

استفاده از تابع search() رشته های متنی با یک رشته متنی

The search() method searches a string for a specified value and returns the position of the match:

متد search() یک رشته متنی را برای پیدا کردن یک رشته متنی جستجو می کند و موقعیت یا اندیس نتیجه را برمی گرداند :

Example

Use a string to do a search for "W3schools" in a string:

استفاده از یک رشته متنی برای پیدا کردن کلمه "W3schools" در یک رشته متنی :

var str = "Visit W3Schools!";

var n = str.search("W3Schools");

Using String search() With a Regular Expression

استفاده از تابع search() رشته های متنی با عبارت های با قاعده

Example

Use a regular expression to do a case-insensitive search for "w3schools" in a string:

استفاده از یک عبارت با قاعده برای جستجوی غیر حساس به حروف کوچک و بزرگ  کلمه "w3schools" در یک رشته متنی :

var str = "Visit W3Schools";

var n = str.search(/w3schools/i);

The result in n will be:

نتیجه متغیر n برابر خواهد بود با :

6

Using String replace() With a String

استفاده از متدreplace() با یک رشته متنی

The replace() method replaces a specified value with another value in a string:

متد Replace() یک مقدار بهخصوص را با یک مقدار دیگر در یک رشته متنی جابه جا می کند :

var str = "Visit Microsoft!";

var res = str.replace("Microsoft", "W3Schools");

Use String replace() With a Regular Expression

استفاده از تابع replace() با یک عبارت با قاعده

Example

Use a case insensitive regular expression to replace Microsoft with W3Schools in a string:

استفاده از یک عبارت با قاعده غیر حساس به حروف کوچک و بزرگ برای جا به جایی کلمه Microsoft با کلمه W3Schools در یک رشته متنی :

var str = "Visit Microsoft!";

var res = str.replace(/microsoft/i, "W3Schools");

The result in res will be:

مقدار متغیر Res برابر خواهد بود با :

Visit W3Schools!

Did You Notice?

آیا شما توجه کرده اید ؟

Regular expression arguments (instead of string arguments) can be used in the methods above.

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

Regular expressions can make your search much more powerful (case insensitive for example).

عبارت های با قاعده می توانند جستجوی شما را قدرتمند تر کنند ( برای مثال غیرحساس بودن به حروف کوچک و بزرگ ) .

Regular Expression Modifiers

Modifier های عبارت های باقاعده

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

Regular Expression Patterns

الگوهای عبارت های باقاعده

Brackets are used to find a range of characters:

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

عبارت توضیحات
[abc] تمام کاراکتر های بین براکت ها را پیدا می کند .
[0-9] تمام اعداد بین براکت ها را پیدا می کند .
(x|y) تمام گزینه های بین | را پیدا می کند.

Metacharacters are characters with a special meaning:

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

متا کاراکتر توضیحات
\d یک عدد را پیدا می کند.
\s یک کاراکتر فاصله را پیدا می کند.
\b نتیجه را در ابتدای کلمه ای مانند \bword و یا در پایان کلمه ای مانند word\b پیدا می کند .
\uxxxx کاراکتر unicode  را که با یک عدد هگزا دسیمال مشخص شده است را پیدا می کند .

Quantifiers define quantities:

کمیت یا Quantifiers مقادیر را تعریف می کند :

عبارت توضیحات
n+ تمامی نتایجی را که حداقل یک n دارند را پیدا می کند.
n* تمامی نتایجی را که دارای صفر و یا تعداد بیشتری از حرف n می باشند را پیدا می کند .
n? تمامی نتایجی را که دارای صفر و یا تعداد بیشتری از حرف n می باشند را پیدا می کند .

Using the RegExp Object

استفاده از شی یا object ، RegExp

In JavaScript, the RegExp object is a regular expression object with predefined properties and methods.

در جاوا اسکریپت ، شی RegEXP یک عبارت با قاعده با ویژگی ها و متدهای از پیش تعریف شده است .

Using test()

استفاده از متد test()

The test() method is a RegExp expression method.

متد test() یک متد عبارت از شی RegExp می باشد .

It searches a string for a pattern, and returns true or false, depending on the result.

این متد یک رشته متنی را برای پیدا کردن الگو یا آرگومان خود جستجو می کند و با توجه به نتیجه مقدار True و یا False را برمی گرداند .

The following example searches a string for the character "e":

مثال پایین یک رشته متنی را برای کاراکتر "e" جستجو می کند :

Example

var patt = /e/;

patt.test("The best things in life are free!");

Since there is an "e" in the string, the output of the code above will be:

از آنجایی که کاراکتر "e" در رشته متنی مورد نظر وجود دارید ، خروجی کدبالا به صورت زیر خواهد بود :

true

You don't have to put the regular expression in a variable first. The two lines above can be shortened to one:

شما مجبور نیستید که عبارت با قاعده را ابتدا درون یک متغیر قرار دهید . دو خط کد بالا را می توان به یک خط کد به صورت زیر خلاصه کرد :

/e/.test("The best things in life are free!");

Using exec()

استفاده از متد exec()

The exec() method is a RegExp expression method.

متد exec() یک متد شی RegExp است .

It searches a string for a specified pattern, and returns the found text as an object.

این متد یک رشته متنی را برای یک مقدار به خصوص جستجو می کند و نتیجه را به صورت یک شی یا object برمی گرداند .

If no match is found, it returns an empty (null) object.

اگر هیچ نتیجه ای یافت نشود ، این متد یک شی خالی (null) را برمی گرداند .

The following example searches a string for the character "e":

مثال زیر یک رشته متنی را برای پیدا کردن کاراکتر "e" جستجو می کند :

Example 1

/e/.exec("The best things in life are free!");

Complete RegExp Reference

مرجع کامل RegExp

For a complete reference, go to our Complete JavaScript RegExp Reference.

برای دیدن یک کامل ، شما می توانید مقاله ما را تحت عنوان مرجع کامل RegExp در جاوا اسکریپت ، را مشاهده کنید.

The reference contains descriptions and examples of all RegExp properties and methods.

مرجع شامل توضیحات و مثالهایی از تمامی ویژگی ها و متد های RegExp است .